#include"dao_SDL.h"

DAO_INIT_MODULE;
DaoVmSpace *__daoVmSpace = NULL;

#ifdef __cplusplus
extern "C"{
#endif

static DaoNumItem constNumbers[] =
{

  { "AUDIO_S16LSB", DAO_INTEGER, AUDIO_S16LSB },
  { "AUDIO_S16MSB", DAO_INTEGER, AUDIO_S16MSB },
  { "AUDIO_S8", DAO_INTEGER, AUDIO_S8 },
  { "AUDIO_U16LSB", DAO_INTEGER, AUDIO_U16LSB },
  { "AUDIO_U16MSB", DAO_INTEGER, AUDIO_U16MSB },
  { "AUDIO_U8", DAO_INTEGER, AUDIO_U8 },
  { "CD_ERROR", DAO_INTEGER, CD_ERROR },
  { "CD_FPS", DAO_INTEGER, CD_FPS },
  { "CD_PAUSED", DAO_INTEGER, CD_PAUSED },
  { "CD_PLAYING", DAO_INTEGER, CD_PLAYING },
  { "CD_STOPPED", DAO_INTEGER, CD_STOPPED },
  { "CD_TRAYEMPTY", DAO_INTEGER, CD_TRAYEMPTY },
  { "DUMMY_ENUM_VALUE", DAO_INTEGER, DUMMY_ENUM_VALUE },
  { "KMOD_CAPS", DAO_INTEGER, KMOD_CAPS },
  { "KMOD_LALT", DAO_INTEGER, KMOD_LALT },
  { "KMOD_LCTRL", DAO_INTEGER, KMOD_LCTRL },
  { "KMOD_LMETA", DAO_INTEGER, KMOD_LMETA },
  { "KMOD_LSHIFT", DAO_INTEGER, KMOD_LSHIFT },
  { "KMOD_MODE", DAO_INTEGER, KMOD_MODE },
  { "KMOD_NONE", DAO_INTEGER, KMOD_NONE },
  { "KMOD_NUM", DAO_INTEGER, KMOD_NUM },
  { "KMOD_RALT", DAO_INTEGER, KMOD_RALT },
  { "KMOD_RCTRL", DAO_INTEGER, KMOD_RCTRL },
  { "KMOD_RESERVED", DAO_INTEGER, KMOD_RESERVED },
  { "KMOD_RMETA", DAO_INTEGER, KMOD_RMETA },
  { "KMOD_RSHIFT", DAO_INTEGER, KMOD_RSHIFT },
  { "RW_SEEK_CUR", DAO_INTEGER, RW_SEEK_CUR },
  { "RW_SEEK_END", DAO_INTEGER, RW_SEEK_END },
  { "RW_SEEK_SET", DAO_INTEGER, RW_SEEK_SET },
  { "SDLK_0", DAO_INTEGER, SDLK_0 },
  { "SDLK_1", DAO_INTEGER, SDLK_1 },
  { "SDLK_2", DAO_INTEGER, SDLK_2 },
  { "SDLK_3", DAO_INTEGER, SDLK_3 },
  { "SDLK_4", DAO_INTEGER, SDLK_4 },
  { "SDLK_5", DAO_INTEGER, SDLK_5 },
  { "SDLK_6", DAO_INTEGER, SDLK_6 },
  { "SDLK_7", DAO_INTEGER, SDLK_7 },
  { "SDLK_8", DAO_INTEGER, SDLK_8 },
  { "SDLK_9", DAO_INTEGER, SDLK_9 },
  { "SDLK_AMPERSAND", DAO_INTEGER, SDLK_AMPERSAND },
  { "SDLK_ASTERISK", DAO_INTEGER, SDLK_ASTERISK },
  { "SDLK_AT", DAO_INTEGER, SDLK_AT },
  { "SDLK_BACKQUOTE", DAO_INTEGER, SDLK_BACKQUOTE },
  { "SDLK_BACKSLASH", DAO_INTEGER, SDLK_BACKSLASH },
  { "SDLK_BACKSPACE", DAO_INTEGER, SDLK_BACKSPACE },
  { "SDLK_BREAK", DAO_INTEGER, SDLK_BREAK },
  { "SDLK_CAPSLOCK", DAO_INTEGER, SDLK_CAPSLOCK },
  { "SDLK_CARET", DAO_INTEGER, SDLK_CARET },
  { "SDLK_CLEAR", DAO_INTEGER, SDLK_CLEAR },
  { "SDLK_COLON", DAO_INTEGER, SDLK_COLON },
  { "SDLK_COMMA", DAO_INTEGER, SDLK_COMMA },
  { "SDLK_COMPOSE", DAO_INTEGER, SDLK_COMPOSE },
  { "SDLK_DELETE", DAO_INTEGER, SDLK_DELETE },
  { "SDLK_DOLLAR", DAO_INTEGER, SDLK_DOLLAR },
  { "SDLK_DOWN", DAO_INTEGER, SDLK_DOWN },
  { "SDLK_END", DAO_INTEGER, SDLK_END },
  { "SDLK_EQUALS", DAO_INTEGER, SDLK_EQUALS },
  { "SDLK_ESCAPE", DAO_INTEGER, SDLK_ESCAPE },
  { "SDLK_EURO", DAO_INTEGER, SDLK_EURO },
  { "SDLK_EXCLAIM", DAO_INTEGER, SDLK_EXCLAIM },
  { "SDLK_F1", DAO_INTEGER, SDLK_F1 },
  { "SDLK_F10", DAO_INTEGER, SDLK_F10 },
  { "SDLK_F11", DAO_INTEGER, SDLK_F11 },
  { "SDLK_F12", DAO_INTEGER, SDLK_F12 },
  { "SDLK_F13", DAO_INTEGER, SDLK_F13 },
  { "SDLK_F14", DAO_INTEGER, SDLK_F14 },
  { "SDLK_F15", DAO_INTEGER, SDLK_F15 },
  { "SDLK_F2", DAO_INTEGER, SDLK_F2 },
  { "SDLK_F3", DAO_INTEGER, SDLK_F3 },
  { "SDLK_F4", DAO_INTEGER, SDLK_F4 },
  { "SDLK_F5", DAO_INTEGER, SDLK_F5 },
  { "SDLK_F6", DAO_INTEGER, SDLK_F6 },
  { "SDLK_F7", DAO_INTEGER, SDLK_F7 },
  { "SDLK_F8", DAO_INTEGER, SDLK_F8 },
  { "SDLK_F9", DAO_INTEGER, SDLK_F9 },
  { "SDLK_FIRST", DAO_INTEGER, SDLK_FIRST },
  { "SDLK_GREATER", DAO_INTEGER, SDLK_GREATER },
  { "SDLK_HASH", DAO_INTEGER, SDLK_HASH },
  { "SDLK_HELP", DAO_INTEGER, SDLK_HELP },
  { "SDLK_HOME", DAO_INTEGER, SDLK_HOME },
  { "SDLK_INSERT", DAO_INTEGER, SDLK_INSERT },
  { "SDLK_KP0", DAO_INTEGER, SDLK_KP0 },
  { "SDLK_KP1", DAO_INTEGER, SDLK_KP1 },
  { "SDLK_KP2", DAO_INTEGER, SDLK_KP2 },
  { "SDLK_KP3", DAO_INTEGER, SDLK_KP3 },
  { "SDLK_KP4", DAO_INTEGER, SDLK_KP4 },
  { "SDLK_KP5", DAO_INTEGER, SDLK_KP5 },
  { "SDLK_KP6", DAO_INTEGER, SDLK_KP6 },
  { "SDLK_KP7", DAO_INTEGER, SDLK_KP7 },
  { "SDLK_KP8", DAO_INTEGER, SDLK_KP8 },
  { "SDLK_KP9", DAO_INTEGER, SDLK_KP9 },
  { "SDLK_KP_DIVIDE", DAO_INTEGER, SDLK_KP_DIVIDE },
  { "SDLK_KP_ENTER", DAO_INTEGER, SDLK_KP_ENTER },
  { "SDLK_KP_EQUALS", DAO_INTEGER, SDLK_KP_EQUALS },
  { "SDLK_KP_MINUS", DAO_INTEGER, SDLK_KP_MINUS },
  { "SDLK_KP_MULTIPLY", DAO_INTEGER, SDLK_KP_MULTIPLY },
  { "SDLK_KP_PERIOD", DAO_INTEGER, SDLK_KP_PERIOD },
  { "SDLK_KP_PLUS", DAO_INTEGER, SDLK_KP_PLUS },
  { "SDLK_LALT", DAO_INTEGER, SDLK_LALT },
  { "SDLK_LAST", DAO_INTEGER, SDLK_LAST },
  { "SDLK_LCTRL", DAO_INTEGER, SDLK_LCTRL },
  { "SDLK_LEFT", DAO_INTEGER, SDLK_LEFT },
  { "SDLK_LEFTBRACKET", DAO_INTEGER, SDLK_LEFTBRACKET },
  { "SDLK_LEFTPAREN", DAO_INTEGER, SDLK_LEFTPAREN },
  { "SDLK_LESS", DAO_INTEGER, SDLK_LESS },
  { "SDLK_LMETA", DAO_INTEGER, SDLK_LMETA },
  { "SDLK_LSHIFT", DAO_INTEGER, SDLK_LSHIFT },
  { "SDLK_LSUPER", DAO_INTEGER, SDLK_LSUPER },
  { "SDLK_MENU", DAO_INTEGER, SDLK_MENU },
  { "SDLK_MINUS", DAO_INTEGER, SDLK_MINUS },
  { "SDLK_MODE", DAO_INTEGER, SDLK_MODE },
  { "SDLK_NUMLOCK", DAO_INTEGER, SDLK_NUMLOCK },
  { "SDLK_PAGEDOWN", DAO_INTEGER, SDLK_PAGEDOWN },
  { "SDLK_PAGEUP", DAO_INTEGER, SDLK_PAGEUP },
  { "SDLK_PAUSE", DAO_INTEGER, SDLK_PAUSE },
  { "SDLK_PERIOD", DAO_INTEGER, SDLK_PERIOD },
  { "SDLK_PLUS", DAO_INTEGER, SDLK_PLUS },
  { "SDLK_POWER", DAO_INTEGER, SDLK_POWER },
  { "SDLK_PRINT", DAO_INTEGER, SDLK_PRINT },
  { "SDLK_QUESTION", DAO_INTEGER, SDLK_QUESTION },
  { "SDLK_QUOTE", DAO_INTEGER, SDLK_QUOTE },
  { "SDLK_QUOTEDBL", DAO_INTEGER, SDLK_QUOTEDBL },
  { "SDLK_RALT", DAO_INTEGER, SDLK_RALT },
  { "SDLK_RCTRL", DAO_INTEGER, SDLK_RCTRL },
  { "SDLK_RETURN", DAO_INTEGER, SDLK_RETURN },
  { "SDLK_RIGHT", DAO_INTEGER, SDLK_RIGHT },
  { "SDLK_RIGHTBRACKET", DAO_INTEGER, SDLK_RIGHTBRACKET },
  { "SDLK_RIGHTPAREN", DAO_INTEGER, SDLK_RIGHTPAREN },
  { "SDLK_RMETA", DAO_INTEGER, SDLK_RMETA },
  { "SDLK_RSHIFT", DAO_INTEGER, SDLK_RSHIFT },
  { "SDLK_RSUPER", DAO_INTEGER, SDLK_RSUPER },
  { "SDLK_SCROLLOCK", DAO_INTEGER, SDLK_SCROLLOCK },
  { "SDLK_SEMICOLON", DAO_INTEGER, SDLK_SEMICOLON },
  { "SDLK_SLASH", DAO_INTEGER, SDLK_SLASH },
  { "SDLK_SPACE", DAO_INTEGER, SDLK_SPACE },
  { "SDLK_SYSREQ", DAO_INTEGER, SDLK_SYSREQ },
  { "SDLK_TAB", DAO_INTEGER, SDLK_TAB },
  { "SDLK_UNDERSCORE", DAO_INTEGER, SDLK_UNDERSCORE },
  { "SDLK_UNDO", DAO_INTEGER, SDLK_UNDO },
  { "SDLK_UNKNOWN", DAO_INTEGER, SDLK_UNKNOWN },
  { "SDLK_UP", DAO_INTEGER, SDLK_UP },
  { "SDLK_WORLD_0", DAO_INTEGER, SDLK_WORLD_0 },
  { "SDLK_WORLD_1", DAO_INTEGER, SDLK_WORLD_1 },
  { "SDLK_WORLD_10", DAO_INTEGER, SDLK_WORLD_10 },
  { "SDLK_WORLD_11", DAO_INTEGER, SDLK_WORLD_11 },
  { "SDLK_WORLD_12", DAO_INTEGER, SDLK_WORLD_12 },
  { "SDLK_WORLD_13", DAO_INTEGER, SDLK_WORLD_13 },
  { "SDLK_WORLD_14", DAO_INTEGER, SDLK_WORLD_14 },
  { "SDLK_WORLD_15", DAO_INTEGER, SDLK_WORLD_15 },
  { "SDLK_WORLD_16", DAO_INTEGER, SDLK_WORLD_16 },
  { "SDLK_WORLD_17", DAO_INTEGER, SDLK_WORLD_17 },
  { "SDLK_WORLD_18", DAO_INTEGER, SDLK_WORLD_18 },
  { "SDLK_WORLD_19", DAO_INTEGER, SDLK_WORLD_19 },
  { "SDLK_WORLD_2", DAO_INTEGER, SDLK_WORLD_2 },
  { "SDLK_WORLD_20", DAO_INTEGER, SDLK_WORLD_20 },
  { "SDLK_WORLD_21", DAO_INTEGER, SDLK_WORLD_21 },
  { "SDLK_WORLD_22", DAO_INTEGER, SDLK_WORLD_22 },
  { "SDLK_WORLD_23", DAO_INTEGER, SDLK_WORLD_23 },
  { "SDLK_WORLD_24", DAO_INTEGER, SDLK_WORLD_24 },
  { "SDLK_WORLD_25", DAO_INTEGER, SDLK_WORLD_25 },
  { "SDLK_WORLD_26", DAO_INTEGER, SDLK_WORLD_26 },
  { "SDLK_WORLD_27", DAO_INTEGER, SDLK_WORLD_27 },
  { "SDLK_WORLD_28", DAO_INTEGER, SDLK_WORLD_28 },
  { "SDLK_WORLD_29", DAO_INTEGER, SDLK_WORLD_29 },
  { "SDLK_WORLD_3", DAO_INTEGER, SDLK_WORLD_3 },
  { "SDLK_WORLD_30", DAO_INTEGER, SDLK_WORLD_30 },
  { "SDLK_WORLD_31", DAO_INTEGER, SDLK_WORLD_31 },
  { "SDLK_WORLD_32", DAO_INTEGER, SDLK_WORLD_32 },
  { "SDLK_WORLD_33", DAO_INTEGER, SDLK_WORLD_33 },
  { "SDLK_WORLD_34", DAO_INTEGER, SDLK_WORLD_34 },
  { "SDLK_WORLD_35", DAO_INTEGER, SDLK_WORLD_35 },
  { "SDLK_WORLD_36", DAO_INTEGER, SDLK_WORLD_36 },
  { "SDLK_WORLD_37", DAO_INTEGER, SDLK_WORLD_37 },
  { "SDLK_WORLD_38", DAO_INTEGER, SDLK_WORLD_38 },
  { "SDLK_WORLD_39", DAO_INTEGER, SDLK_WORLD_39 },
  { "SDLK_WORLD_4", DAO_INTEGER, SDLK_WORLD_4 },
  { "SDLK_WORLD_40", DAO_INTEGER, SDLK_WORLD_40 },
  { "SDLK_WORLD_41", DAO_INTEGER, SDLK_WORLD_41 },
  { "SDLK_WORLD_42", DAO_INTEGER, SDLK_WORLD_42 },
  { "SDLK_WORLD_43", DAO_INTEGER, SDLK_WORLD_43 },
  { "SDLK_WORLD_44", DAO_INTEGER, SDLK_WORLD_44 },
  { "SDLK_WORLD_45", DAO_INTEGER, SDLK_WORLD_45 },
  { "SDLK_WORLD_46", DAO_INTEGER, SDLK_WORLD_46 },
  { "SDLK_WORLD_47", DAO_INTEGER, SDLK_WORLD_47 },
  { "SDLK_WORLD_48", DAO_INTEGER, SDLK_WORLD_48 },
  { "SDLK_WORLD_49", DAO_INTEGER, SDLK_WORLD_49 },
  { "SDLK_WORLD_5", DAO_INTEGER, SDLK_WORLD_5 },
  { "SDLK_WORLD_50", DAO_INTEGER, SDLK_WORLD_50 },
  { "SDLK_WORLD_51", DAO_INTEGER, SDLK_WORLD_51 },
  { "SDLK_WORLD_52", DAO_INTEGER, SDLK_WORLD_52 },
  { "SDLK_WORLD_53", DAO_INTEGER, SDLK_WORLD_53 },
  { "SDLK_WORLD_54", DAO_INTEGER, SDLK_WORLD_54 },
  { "SDLK_WORLD_55", DAO_INTEGER, SDLK_WORLD_55 },
  { "SDLK_WORLD_56", DAO_INTEGER, SDLK_WORLD_56 },
  { "SDLK_WORLD_57", DAO_INTEGER, SDLK_WORLD_57 },
  { "SDLK_WORLD_58", DAO_INTEGER, SDLK_WORLD_58 },
  { "SDLK_WORLD_59", DAO_INTEGER, SDLK_WORLD_59 },
  { "SDLK_WORLD_6", DAO_INTEGER, SDLK_WORLD_6 },
  { "SDLK_WORLD_60", DAO_INTEGER, SDLK_WORLD_60 },
  { "SDLK_WORLD_61", DAO_INTEGER, SDLK_WORLD_61 },
  { "SDLK_WORLD_62", DAO_INTEGER, SDLK_WORLD_62 },
  { "SDLK_WORLD_63", DAO_INTEGER, SDLK_WORLD_63 },
  { "SDLK_WORLD_64", DAO_INTEGER, SDLK_WORLD_64 },
  { "SDLK_WORLD_65", DAO_INTEGER, SDLK_WORLD_65 },
  { "SDLK_WORLD_66", DAO_INTEGER, SDLK_WORLD_66 },
  { "SDLK_WORLD_67", DAO_INTEGER, SDLK_WORLD_67 },
  { "SDLK_WORLD_68", DAO_INTEGER, SDLK_WORLD_68 },
  { "SDLK_WORLD_69", DAO_INTEGER, SDLK_WORLD_69 },
  { "SDLK_WORLD_7", DAO_INTEGER, SDLK_WORLD_7 },
  { "SDLK_WORLD_70", DAO_INTEGER, SDLK_WORLD_70 },
  { "SDLK_WORLD_71", DAO_INTEGER, SDLK_WORLD_71 },
  { "SDLK_WORLD_72", DAO_INTEGER, SDLK_WORLD_72 },
  { "SDLK_WORLD_73", DAO_INTEGER, SDLK_WORLD_73 },
  { "SDLK_WORLD_74", DAO_INTEGER, SDLK_WORLD_74 },
  { "SDLK_WORLD_75", DAO_INTEGER, SDLK_WORLD_75 },
  { "SDLK_WORLD_76", DAO_INTEGER, SDLK_WORLD_76 },
  { "SDLK_WORLD_77", DAO_INTEGER, SDLK_WORLD_77 },
  { "SDLK_WORLD_78", DAO_INTEGER, SDLK_WORLD_78 },
  { "SDLK_WORLD_79", DAO_INTEGER, SDLK_WORLD_79 },
  { "SDLK_WORLD_8", DAO_INTEGER, SDLK_WORLD_8 },
  { "SDLK_WORLD_80", DAO_INTEGER, SDLK_WORLD_80 },
  { "SDLK_WORLD_81", DAO_INTEGER, SDLK_WORLD_81 },
  { "SDLK_WORLD_82", DAO_INTEGER, SDLK_WORLD_82 },
  { "SDLK_WORLD_83", DAO_INTEGER, SDLK_WORLD_83 },
  { "SDLK_WORLD_84", DAO_INTEGER, SDLK_WORLD_84 },
  { "SDLK_WORLD_85", DAO_INTEGER, SDLK_WORLD_85 },
  { "SDLK_WORLD_86", DAO_INTEGER, SDLK_WORLD_86 },
  { "SDLK_WORLD_87", DAO_INTEGER, SDLK_WORLD_87 },
  { "SDLK_WORLD_88", DAO_INTEGER, SDLK_WORLD_88 },
  { "SDLK_WORLD_89", DAO_INTEGER, SDLK_WORLD_89 },
  { "SDLK_WORLD_9", DAO_INTEGER, SDLK_WORLD_9 },
  { "SDLK_WORLD_90", DAO_INTEGER, SDLK_WORLD_90 },
  { "SDLK_WORLD_91", DAO_INTEGER, SDLK_WORLD_91 },
  { "SDLK_WORLD_92", DAO_INTEGER, SDLK_WORLD_92 },
  { "SDLK_WORLD_93", DAO_INTEGER, SDLK_WORLD_93 },
  { "SDLK_WORLD_94", DAO_INTEGER, SDLK_WORLD_94 },
  { "SDLK_WORLD_95", DAO_INTEGER, SDLK_WORLD_95 },
  { "SDLK_a", DAO_INTEGER, SDLK_a },
  { "SDLK_b", DAO_INTEGER, SDLK_b },
  { "SDLK_c", DAO_INTEGER, SDLK_c },
  { "SDLK_d", DAO_INTEGER, SDLK_d },
  { "SDLK_e", DAO_INTEGER, SDLK_e },
  { "SDLK_f", DAO_INTEGER, SDLK_f },
  { "SDLK_g", DAO_INTEGER, SDLK_g },
  { "SDLK_h", DAO_INTEGER, SDLK_h },
  { "SDLK_i", DAO_INTEGER, SDLK_i },
  { "SDLK_j", DAO_INTEGER, SDLK_j },
  { "SDLK_k", DAO_INTEGER, SDLK_k },
  { "SDLK_l", DAO_INTEGER, SDLK_l },
  { "SDLK_m", DAO_INTEGER, SDLK_m },
  { "SDLK_n", DAO_INTEGER, SDLK_n },
  { "SDLK_o", DAO_INTEGER, SDLK_o },
  { "SDLK_p", DAO_INTEGER, SDLK_p },
  { "SDLK_q", DAO_INTEGER, SDLK_q },
  { "SDLK_r", DAO_INTEGER, SDLK_r },
  { "SDLK_s", DAO_INTEGER, SDLK_s },
  { "SDLK_t", DAO_INTEGER, SDLK_t },
  { "SDLK_u", DAO_INTEGER, SDLK_u },
  { "SDLK_v", DAO_INTEGER, SDLK_v },
  { "SDLK_w", DAO_INTEGER, SDLK_w },
  { "SDLK_x", DAO_INTEGER, SDLK_x },
  { "SDLK_y", DAO_INTEGER, SDLK_y },
  { "SDLK_z", DAO_INTEGER, SDLK_z },
  { "SDL_ACTIVEEVENT", DAO_INTEGER, SDL_ACTIVEEVENT },
  { "SDL_ACTIVEEVENTMASK", DAO_INTEGER, SDL_ACTIVEEVENTMASK },
  { "SDL_ADDEVENT", DAO_INTEGER, SDL_ADDEVENT },
  { "SDL_ALLEVENTS", DAO_INTEGER, SDL_ALLEVENTS },
  { "SDL_ALL_HOTKEYS", DAO_INTEGER, SDL_ALL_HOTKEYS },
  { "SDL_ALPHA_OPAQUE", DAO_INTEGER, SDL_ALPHA_OPAQUE },
  { "SDL_ALPHA_TRANSPARENT", DAO_INTEGER, SDL_ALPHA_TRANSPARENT },
  { "SDL_ANYFORMAT", DAO_INTEGER, SDL_ANYFORMAT },
  { "SDL_APPACTIVE", DAO_INTEGER, SDL_APPACTIVE },
  { "SDL_APPINPUTFOCUS", DAO_INTEGER, SDL_APPINPUTFOCUS },
  { "SDL_APPMOUSEFOCUS", DAO_INTEGER, SDL_APPMOUSEFOCUS },
  { "SDL_ASYNCBLIT", DAO_INTEGER, SDL_ASYNCBLIT },
  { "SDL_AUDIO_PAUSED", DAO_INTEGER, SDL_AUDIO_PAUSED },
  { "SDL_AUDIO_PLAYING", DAO_INTEGER, SDL_AUDIO_PLAYING },
  { "SDL_AUDIO_STOPPED", DAO_INTEGER, SDL_AUDIO_STOPPED },
  { "SDL_AUDIO_TRACK", DAO_INTEGER, SDL_AUDIO_TRACK },
  { "SDL_BUTTON_LEFT", DAO_INTEGER, SDL_BUTTON_LEFT },
  { "SDL_BUTTON_MIDDLE", DAO_INTEGER, SDL_BUTTON_MIDDLE },
  { "SDL_BUTTON_RIGHT", DAO_INTEGER, SDL_BUTTON_RIGHT },
  { "SDL_BUTTON_WHEELDOWN", DAO_INTEGER, SDL_BUTTON_WHEELDOWN },
  { "SDL_BUTTON_WHEELUP", DAO_INTEGER, SDL_BUTTON_WHEELUP },
  { "SDL_BUTTON_X1", DAO_INTEGER, SDL_BUTTON_X1 },
  { "SDL_BUTTON_X2", DAO_INTEGER, SDL_BUTTON_X2 },
  { "SDL_DATA_TRACK", DAO_INTEGER, SDL_DATA_TRACK },
  { "SDL_DEFAULT_REPEAT_DELAY", DAO_INTEGER, SDL_DEFAULT_REPEAT_DELAY },
  { "SDL_DEFAULT_REPEAT_INTERVAL", DAO_INTEGER, SDL_DEFAULT_REPEAT_INTERVAL },
  { "SDL_DISABLE", DAO_INTEGER, SDL_DISABLE },
  { "SDL_DOUBLEBUF", DAO_INTEGER, SDL_DOUBLEBUF },
  { "SDL_EFREAD", DAO_INTEGER, SDL_EFREAD },
  { "SDL_EFSEEK", DAO_INTEGER, SDL_EFSEEK },
  { "SDL_EFWRITE", DAO_INTEGER, SDL_EFWRITE },
  { "SDL_ENABLE", DAO_INTEGER, SDL_ENABLE },
  { "SDL_ENOMEM", DAO_INTEGER, SDL_ENOMEM },
  { "SDL_EVENT_RESERVED2", DAO_INTEGER, SDL_EVENT_RESERVED2 },
  { "SDL_EVENT_RESERVED3", DAO_INTEGER, SDL_EVENT_RESERVED3 },
  { "SDL_EVENT_RESERVED4", DAO_INTEGER, SDL_EVENT_RESERVED4 },
  { "SDL_EVENT_RESERVED5", DAO_INTEGER, SDL_EVENT_RESERVED5 },
  { "SDL_EVENT_RESERVED6", DAO_INTEGER, SDL_EVENT_RESERVED6 },
  { "SDL_EVENT_RESERVED7", DAO_INTEGER, SDL_EVENT_RESERVED7 },
  { "SDL_EVENT_RESERVEDA", DAO_INTEGER, SDL_EVENT_RESERVEDA },
  { "SDL_EVENT_RESERVEDB", DAO_INTEGER, SDL_EVENT_RESERVEDB },
  { "SDL_FALSE", DAO_INTEGER, SDL_FALSE },
  { "SDL_FULLSCREEN", DAO_INTEGER, SDL_FULLSCREEN },
  { "SDL_GETEVENT", DAO_INTEGER, SDL_GETEVENT },
  { "SDL_GL_ACCELERATED_VISUAL", DAO_INTEGER, SDL_GL_ACCELERATED_VISUAL },
  { "SDL_GL_ACCUM_ALPHA_SIZE", DAO_INTEGER, SDL_GL_ACCUM_ALPHA_SIZE },
  { "SDL_GL_ACCUM_BLUE_SIZE", DAO_INTEGER, SDL_GL_ACCUM_BLUE_SIZE },
  { "SDL_GL_ACCUM_GREEN_SIZE", DAO_INTEGER, SDL_GL_ACCUM_GREEN_SIZE },
  { "SDL_GL_ACCUM_RED_SIZE", DAO_INTEGER, SDL_GL_ACCUM_RED_SIZE },
  { "SDL_GL_ALPHA_SIZE", DAO_INTEGER, SDL_GL_ALPHA_SIZE },
  { "SDL_GL_BLUE_SIZE", DAO_INTEGER, SDL_GL_BLUE_SIZE },
  { "SDL_GL_BUFFER_SIZE", DAO_INTEGER, SDL_GL_BUFFER_SIZE },
  { "SDL_GL_DEPTH_SIZE", DAO_INTEGER, SDL_GL_DEPTH_SIZE },
  { "SDL_GL_DOUBLEBUFFER", DAO_INTEGER, SDL_GL_DOUBLEBUFFER },
  { "SDL_GL_GREEN_SIZE", DAO_INTEGER, SDL_GL_GREEN_SIZE },
  { "SDL_GL_MULTISAMPLEBUFFERS", DAO_INTEGER, SDL_GL_MULTISAMPLEBUFFERS },
  { "SDL_GL_MULTISAMPLESAMPLES", DAO_INTEGER, SDL_GL_MULTISAMPLESAMPLES },
  { "SDL_GL_RED_SIZE", DAO_INTEGER, SDL_GL_RED_SIZE },
  { "SDL_GL_STENCIL_SIZE", DAO_INTEGER, SDL_GL_STENCIL_SIZE },
  { "SDL_GL_STEREO", DAO_INTEGER, SDL_GL_STEREO },
  { "SDL_GL_SWAP_CONTROL", DAO_INTEGER, SDL_GL_SWAP_CONTROL },
  { "SDL_GRAB_FULLSCREEN", DAO_INTEGER, SDL_GRAB_FULLSCREEN },
  { "SDL_GRAB_OFF", DAO_INTEGER, SDL_GRAB_OFF },
  { "SDL_GRAB_ON", DAO_INTEGER, SDL_GRAB_ON },
  { "SDL_GRAB_QUERY", DAO_INTEGER, SDL_GRAB_QUERY },
  { "SDL_HAT_CENTERED", DAO_INTEGER, SDL_HAT_CENTERED },
  { "SDL_HAT_DOWN", DAO_INTEGER, SDL_HAT_DOWN },
  { "SDL_HAT_LEFT", DAO_INTEGER, SDL_HAT_LEFT },
  { "SDL_HAT_RIGHT", DAO_INTEGER, SDL_HAT_RIGHT },
  { "SDL_HAT_UP", DAO_INTEGER, SDL_HAT_UP },
  { "SDL_HWACCEL", DAO_INTEGER, SDL_HWACCEL },
  { "SDL_HWPALETTE", DAO_INTEGER, SDL_HWPALETTE },
  { "SDL_HWSURFACE", DAO_INTEGER, SDL_HWSURFACE },
  { "SDL_IGNORE", DAO_INTEGER, SDL_IGNORE },
  { "SDL_INIT_AUDIO", DAO_INTEGER, SDL_INIT_AUDIO },
  { "SDL_INIT_CDROM", DAO_INTEGER, SDL_INIT_CDROM },
  { "SDL_INIT_EVENTTHREAD", DAO_INTEGER, SDL_INIT_EVENTTHREAD },
  { "SDL_INIT_EVERYTHING", DAO_INTEGER, SDL_INIT_EVERYTHING },
  { "SDL_INIT_JOYSTICK", DAO_INTEGER, SDL_INIT_JOYSTICK },
  { "SDL_INIT_NOPARACHUTE", DAO_INTEGER, SDL_INIT_NOPARACHUTE },
  { "SDL_INIT_TIMER", DAO_INTEGER, SDL_INIT_TIMER },
  { "SDL_INIT_VIDEO", DAO_INTEGER, SDL_INIT_VIDEO },
  { "SDL_IYUV_OVERLAY", DAO_INTEGER, SDL_IYUV_OVERLAY },
  { "SDL_JOYAXISMOTION", DAO_INTEGER, SDL_JOYAXISMOTION },
  { "SDL_JOYAXISMOTIONMASK", DAO_INTEGER, SDL_JOYAXISMOTIONMASK },
  { "SDL_JOYBALLMOTION", DAO_INTEGER, SDL_JOYBALLMOTION },
  { "SDL_JOYBALLMOTIONMASK", DAO_INTEGER, SDL_JOYBALLMOTIONMASK },
  { "SDL_JOYBUTTONDOWN", DAO_INTEGER, SDL_JOYBUTTONDOWN },
  { "SDL_JOYBUTTONDOWNMASK", DAO_INTEGER, SDL_JOYBUTTONDOWNMASK },
  { "SDL_JOYBUTTONUP", DAO_INTEGER, SDL_JOYBUTTONUP },
  { "SDL_JOYBUTTONUPMASK", DAO_INTEGER, SDL_JOYBUTTONUPMASK },
  { "SDL_JOYEVENTMASK", DAO_INTEGER, SDL_JOYEVENTMASK },
  { "SDL_JOYHATMOTION", DAO_INTEGER, SDL_JOYHATMOTION },
  { "SDL_JOYHATMOTIONMASK", DAO_INTEGER, SDL_JOYHATMOTIONMASK },
  { "SDL_KEYDOWN", DAO_INTEGER, SDL_KEYDOWN },
  { "SDL_KEYDOWNMASK", DAO_INTEGER, SDL_KEYDOWNMASK },
  { "SDL_KEYEVENTMASK", DAO_INTEGER, SDL_KEYEVENTMASK },
  { "SDL_KEYUP", DAO_INTEGER, SDL_KEYUP },
  { "SDL_KEYUPMASK", DAO_INTEGER, SDL_KEYUPMASK },
  { "SDL_LASTERROR", DAO_INTEGER, SDL_LASTERROR },
  { "SDL_LOGPAL", DAO_INTEGER, SDL_LOGPAL },
  { "SDL_MAX_TRACKS", DAO_INTEGER, SDL_MAX_TRACKS },
  { "SDL_MIX_MAXVOLUME", DAO_INTEGER, SDL_MIX_MAXVOLUME },
  { "SDL_MOUSEBUTTONDOWN", DAO_INTEGER, SDL_MOUSEBUTTONDOWN },
  { "SDL_MOUSEBUTTONDOWNMASK", DAO_INTEGER, SDL_MOUSEBUTTONDOWNMASK },
  { "SDL_MOUSEBUTTONUP", DAO_INTEGER, SDL_MOUSEBUTTONUP },
  { "SDL_MOUSEBUTTONUPMASK", DAO_INTEGER, SDL_MOUSEBUTTONUPMASK },
  { "SDL_MOUSEEVENTMASK", DAO_INTEGER, SDL_MOUSEEVENTMASK },
  { "SDL_MOUSEMOTION", DAO_INTEGER, SDL_MOUSEMOTION },
  { "SDL_MOUSEMOTIONMASK", DAO_INTEGER, SDL_MOUSEMOTIONMASK },
  { "SDL_MUTEX_TIMEDOUT", DAO_INTEGER, SDL_MUTEX_TIMEDOUT },
  { "SDL_NOEVENT", DAO_INTEGER, SDL_NOEVENT },
  { "SDL_NOFRAME", DAO_INTEGER, SDL_NOFRAME },
  { "SDL_NUMEVENTS", DAO_INTEGER, SDL_NUMEVENTS },
  { "SDL_OPENGL", DAO_INTEGER, SDL_OPENGL },
  { "SDL_OPENGLBLIT", DAO_INTEGER, SDL_OPENGLBLIT },
  { "SDL_PEEKEVENT", DAO_INTEGER, SDL_PEEKEVENT },
  { "SDL_PHYSPAL", DAO_INTEGER, SDL_PHYSPAL },
  { "SDL_PREALLOC", DAO_INTEGER, SDL_PREALLOC },
  { "SDL_PRESSED", DAO_INTEGER, SDL_PRESSED },
  { "SDL_QUIT", DAO_INTEGER, SDL_QUIT },
  { "SDL_QUITMASK", DAO_INTEGER, SDL_QUITMASK },
  { "SDL_RELEASED", DAO_INTEGER, SDL_RELEASED },
  { "SDL_RESIZABLE", DAO_INTEGER, SDL_RESIZABLE },
  { "SDL_RLEACCEL", DAO_INTEGER, SDL_RLEACCEL },
  { "SDL_RLEACCELOK", DAO_INTEGER, SDL_RLEACCELOK },
  { "SDL_SRCALPHA", DAO_INTEGER, SDL_SRCALPHA },
  { "SDL_SRCCOLORKEY", DAO_INTEGER, SDL_SRCCOLORKEY },
  { "SDL_SWSURFACE", DAO_INTEGER, SDL_SWSURFACE },
  { "SDL_SYSWMEVENT", DAO_INTEGER, SDL_SYSWMEVENT },
  { "SDL_SYSWMEVENTMASK", DAO_INTEGER, SDL_SYSWMEVENTMASK },
  { "SDL_TIMESLICE", DAO_INTEGER, SDL_TIMESLICE },
  { "SDL_TRUE", DAO_INTEGER, SDL_TRUE },
  { "SDL_UNSUPPORTED", DAO_INTEGER, SDL_UNSUPPORTED },
  { "SDL_USEREVENT", DAO_INTEGER, SDL_USEREVENT },
  { "SDL_UYVY_OVERLAY", DAO_INTEGER, SDL_UYVY_OVERLAY },
  { "SDL_VIDEOEXPOSE", DAO_INTEGER, SDL_VIDEOEXPOSE },
  { "SDL_VIDEOEXPOSEMASK", DAO_INTEGER, SDL_VIDEOEXPOSEMASK },
  { "SDL_VIDEORESIZE", DAO_INTEGER, SDL_VIDEORESIZE },
  { "SDL_VIDEORESIZEMASK", DAO_INTEGER, SDL_VIDEORESIZEMASK },
  { "SDL_YUY2_OVERLAY", DAO_INTEGER, SDL_YUY2_OVERLAY },
  { "SDL_YV12_OVERLAY", DAO_INTEGER, SDL_YV12_OVERLAY },
  { "SDL_YVYU_OVERLAY", DAO_INTEGER, SDL_YVYU_OVERLAY },
  { "TIMER_RESOLUTION", DAO_INTEGER, TIMER_RESOLUTION },
  { NULL, 0, 0 }
};
static void dao__SDL_malloc( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_calloc( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_realloc( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_free( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_getenv( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_putenv( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_memset( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_memcmp( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_strlen( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_strlcpy( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_strlcat( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_strdup( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_strrev( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_strupr( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_strlwr( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_strchr( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_strrchr( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_strstr( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_ltoa( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_ultoa( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_strtol( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_strtoul( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_lltoa( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_ulltoa( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_strtoll( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_strtoull( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_strtod( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_strcmp( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_strncmp( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_strcasecmp( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_strncasecmp( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_vsnprintf( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_iconv( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_iconv_string( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_Init( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_InitSubSystem( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_QuitSubSystem( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_WasInit( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_Quit( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GetAppState( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CDNumDrives( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CDName( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CDOpen( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CDStatus( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CDPlayTracks( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CDPlay( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CDPause( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CDResume( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CDStop( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CDEject( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CDClose( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_HasRDTSC( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_HasMMX( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_HasMMXExt( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_Has3DNow( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_Has3DNowExt( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_HasSSE( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_HasSSE2( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_HasAltiVec( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_AudioInit( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_AudioQuit( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_AudioDriverName( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_OpenAudio( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GetAudioStatus( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_PauseAudio( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_FreeWAV( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_BuildAudioCVT( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_ConvertAudio( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_MixAudio( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_LockAudio( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_UnlockAudio( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CloseAudio( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_NumJoysticks( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_JoystickName( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_JoystickOpen( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_JoystickOpened( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_JoystickIndex( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_JoystickNumAxes( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_JoystickNumBalls( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_JoystickNumHats( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_JoystickNumButtons( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_JoystickUpdate( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_JoystickEventState( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_JoystickGetAxis( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_JoystickGetHat( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_JoystickGetBall( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_JoystickGetButton( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_JoystickClose( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_LoadObject( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_LoadFunction( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_UnloadObject( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CreateMutex( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_mutexP( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_mutexV( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_DestroyMutex( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CreateSemaphore( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_DestroySemaphore( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_SemWait( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_SemTryWait( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_SemWaitTimeout( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_SemPost( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_SemValue( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CreateCond( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_DestroyCond( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CondSignal( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CondBroadcast( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CondWait( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CondWaitTimeout( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_ThreadID( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GetThreadID( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_WaitThread( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_KillThread( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GetTicks( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_Delay( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_RemoveTimer( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GetError( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_ClearError( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_Error( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_VideoInit( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_VideoQuit( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_VideoDriverName( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GetVideoSurface( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GetVideoInfo( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_VideoModeOK( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_SetVideoMode( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_UpdateRects( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_UpdateRect( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_Flip( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_SetGamma( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_SetGammaRamp( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GetGammaRamp( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_SetColors( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_SetPalette( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_MapRGB( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_MapRGBA( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GetRGB( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GetRGBA( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CreateRGBSurface( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CreateRGBSurfaceFrom( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_FreeSurface( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_LockSurface( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_UnlockSurface( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_LoadBMP_RW( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_SaveBMP_RW( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_SetColorKey( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_SetAlpha( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_SetClipRect( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GetClipRect( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_ConvertSurface( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_UpperBlit( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_LowerBlit( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_FillRect( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_DisplayFormat( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_DisplayFormatAlpha( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CreateYUVOverlay( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_LockYUVOverlay( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_UnlockYUVOverlay( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_DisplayYUVOverlay( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_FreeYUVOverlay( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GL_LoadLibrary( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GL_GetProcAddress( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GL_SetAttribute( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GL_GetAttribute( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GL_SwapBuffers( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GL_UpdateRects( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GL_Lock( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GL_Unlock( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_WM_SetCaption( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_WM_GetCaption( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_WM_SetIcon( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_WM_IconifyWindow( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_WM_ToggleFullScreen( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_WM_GrabInput( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_SoftStretch( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_EnableUNICODE( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_EnableKeyRepeat( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GetKeyRepeat( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GetKeyState( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GetModState( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_SetModState( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GetKeyName( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GetMouseState( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GetRelativeMouseState( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_WarpMouse( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_CreateCursor( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_SetCursor( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_GetCursor( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_FreeCursor( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_ShowCursor( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_PumpEvents( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_PeepEvents( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_PollEvent( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_WaitEvent( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_PushEvent( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_EventState( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_RWFromFile( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_RWFromFP( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_RWFromMem( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_RWFromConstMem( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_AllocRW( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_FreeRW( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_ReadLE16( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_ReadBE16( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_ReadLE32( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_ReadBE32( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_ReadLE64( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_ReadBE64( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_WriteLE16( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_WriteBE16( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_WriteLE32( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_WriteBE32( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_WriteLE64( DaoContext *_ctx, DValue *_p[], int _n );
static void dao__SDL_WriteBE64( DaoContext *_ctx, DValue *_p[], int _n );

static DaoFuncItem dao_Funcs[] =
{
  { dao__SDL_malloc, "SDL_malloc( size : int )=>cdata" },
  { dao__SDL_calloc, "SDL_calloc( nmemb : int, size : int )=>cdata" },
  { dao__SDL_realloc, "SDL_realloc( mem : cdata, size : int )=>cdata" },
  { dao__SDL_free, "SDL_free( mem : cdata )" },
  { dao__SDL_getenv, "SDL_getenv( name : string )=>string" },
  { dao__SDL_putenv, "SDL_putenv( variable : string )=>int" },
  { dao__SDL_memset, "SDL_memset( dst : cdata, c : int, len : int )=>cdata" },
  { dao__SDL_memcmp, "SDL_memcmp( s1 : cdata, s2 : cdata, len : int )=>int" },
  { dao__SDL_strlen, "SDL_strlen( string : string )=>int" },
  { dao__SDL_strlcpy, "SDL_strlcpy( dst : string, src : string, maxlen : int )=>int" },
  { dao__SDL_strlcat, "SDL_strlcat( dst : string, src : string, maxlen : int )=>int" },
  { dao__SDL_strdup, "SDL_strdup( string : string )=>string" },
  { dao__SDL_strrev, "SDL_strrev( string : string )=>string" },
  { dao__SDL_strupr, "SDL_strupr( string : string )=>string" },
  { dao__SDL_strlwr, "SDL_strlwr( string : string )=>string" },
  { dao__SDL_strchr, "SDL_strchr( string : string, c : int )=>string" },
  { dao__SDL_strrchr, "SDL_strrchr( string : string, c : int )=>string" },
  { dao__SDL_strstr, "SDL_strstr( haystack : string, needle : string )=>string" },
  { dao__SDL_ltoa, "SDL_ltoa( value : int, string : string, radix : int )=>string" },
  { dao__SDL_ultoa, "SDL_ultoa( value : int, string : string, radix : int )=>string" },
  { dao__SDL_strtol, "SDL_strtol( string : string, endp : string, base : int )=>int" },
  { dao__SDL_strtoul, "SDL_strtoul( string : string, endp : string, base : int )=>int" },
  { dao__SDL_lltoa, "SDL_lltoa( value : int, string : string, radix : int )=>string" },
  { dao__SDL_ulltoa, "SDL_ulltoa( value : int, string : string, radix : int )=>string" },
  { dao__SDL_strtoll, "SDL_strtoll( string : string, endp : string, base : int )=>int" },
  { dao__SDL_strtoull, "SDL_strtoull( string : string, endp : string, base : int )=>int" },
  { dao__SDL_strtod, "SDL_strtod( string : string, endp : string )=>double" },
  { dao__SDL_strcmp, "SDL_strcmp( str1 : string, str2 : string )=>int" },
  { dao__SDL_strncmp, "SDL_strncmp( str1 : string, str2 : string, maxlen : int )=>int" },
  { dao__SDL_strcasecmp, "SDL_strcasecmp( str1 : string, str2 : string )=>int" },
  { dao__SDL_strncasecmp, "SDL_strncasecmp( str1 : string, str2 : string, maxlen : int )=>int" },
  { dao__SDL_vsnprintf, "SDL_vsnprintf( text : string, maxlen : int, fmt : string, ap : va_list )=>int" },
  { dao__SDL_iconv, "SDL_iconv( cd : SDL_iconv_t, inbuf : string, inbytesleft : int, outbuf : string, outbytesleft : int )=>int" },
  { dao__SDL_iconv_string, "SDL_iconv_string( tocode : string, fromcode : string, inbuf : string, inbytesleft : int )=>string" },
  { dao__SDL_Init, "SDL_Init( flags : int )=>int" },
  { dao__SDL_InitSubSystem, "SDL_InitSubSystem( flags : int )=>int" },
  { dao__SDL_QuitSubSystem, "SDL_QuitSubSystem( flags : int )" },
  { dao__SDL_WasInit, "SDL_WasInit( flags : int )=>int" },
  { dao__SDL_Quit, "SDL_Quit(  )" },
  { dao__SDL_GetAppState, "SDL_GetAppState(  )=>int" },
  { dao__SDL_CDNumDrives, "SDL_CDNumDrives(  )=>int" },
  { dao__SDL_CDName, "SDL_CDName( drive : int )=>string" },
  { dao__SDL_CDOpen, "SDL_CDOpen( drive : int )=>SDL_CD" },
  { dao__SDL_CDStatus, "SDL_CDStatus( cdrom : SDL_CD )=>int" },
  { dao__SDL_CDPlayTracks, "SDL_CDPlayTracks( cdrom : SDL_CD, start_track : int, start_frame : int, ntracks : int, nframes : int )=>int" },
  { dao__SDL_CDPlay, "SDL_CDPlay( cdrom : SDL_CD, start : int, length : int )=>int" },
  { dao__SDL_CDPause, "SDL_CDPause( cdrom : SDL_CD )=>int" },
  { dao__SDL_CDResume, "SDL_CDResume( cdrom : SDL_CD )=>int" },
  { dao__SDL_CDStop, "SDL_CDStop( cdrom : SDL_CD )=>int" },
  { dao__SDL_CDEject, "SDL_CDEject( cdrom : SDL_CD )=>int" },
  { dao__SDL_CDClose, "SDL_CDClose( cdrom : SDL_CD )" },
  { dao__SDL_HasRDTSC, "SDL_HasRDTSC(  )=>int" },
  { dao__SDL_HasMMX, "SDL_HasMMX(  )=>int" },
  { dao__SDL_HasMMXExt, "SDL_HasMMXExt(  )=>int" },
  { dao__SDL_Has3DNow, "SDL_Has3DNow(  )=>int" },
  { dao__SDL_Has3DNowExt, "SDL_Has3DNowExt(  )=>int" },
  { dao__SDL_HasSSE, "SDL_HasSSE(  )=>int" },
  { dao__SDL_HasSSE2, "SDL_HasSSE2(  )=>int" },
  { dao__SDL_HasAltiVec, "SDL_HasAltiVec(  )=>int" },
  { dao__SDL_AudioInit, "SDL_AudioInit( driver_name : string )=>int" },
  { dao__SDL_AudioQuit, "SDL_AudioQuit(  )" },
  { dao__SDL_AudioDriverName, "SDL_AudioDriverName( namebuf : string, maxlen : int )=>string" },
  { dao__SDL_OpenAudio, "SDL_OpenAudio( desired : SDL_AudioSpec, obtained : SDL_AudioSpec )=>int" },
  { dao__SDL_GetAudioStatus, "SDL_GetAudioStatus(  )=>int" },
  { dao__SDL_PauseAudio, "SDL_PauseAudio( pause_on : int )" },
  { dao__SDL_FreeWAV, "SDL_FreeWAV( audio_buf : int )" },
  { dao__SDL_BuildAudioCVT, "SDL_BuildAudioCVT( cvt : SDL_AudioCVT, src_format : int, src_channels : int, src_rate : int, dst_format : int, dst_channels : int, dst_rate : int )=>int" },
  { dao__SDL_ConvertAudio, "SDL_ConvertAudio( cvt : SDL_AudioCVT )=>int" },
  { dao__SDL_MixAudio, "SDL_MixAudio( dst : int, src : array<int>, len : int, volume : int )" },
  { dao__SDL_LockAudio, "SDL_LockAudio(  )" },
  { dao__SDL_UnlockAudio, "SDL_UnlockAudio(  )" },
  { dao__SDL_CloseAudio, "SDL_CloseAudio(  )" },
  { dao__SDL_NumJoysticks, "SDL_NumJoysticks(  )=>int" },
  { dao__SDL_JoystickName, "SDL_JoystickName( device_index : int )=>string" },
  { dao__SDL_JoystickOpen, "SDL_JoystickOpen( device_index : int )=>SDL_Joystick" },
  { dao__SDL_JoystickOpened, "SDL_JoystickOpened( device_index : int )=>int" },
  { dao__SDL_JoystickIndex, "SDL_JoystickIndex( joystick : SDL_Joystick )=>int" },
  { dao__SDL_JoystickNumAxes, "SDL_JoystickNumAxes( joystick : SDL_Joystick )=>int" },
  { dao__SDL_JoystickNumBalls, "SDL_JoystickNumBalls( joystick : SDL_Joystick )=>int" },
  { dao__SDL_JoystickNumHats, "SDL_JoystickNumHats( joystick : SDL_Joystick )=>int" },
  { dao__SDL_JoystickNumButtons, "SDL_JoystickNumButtons( joystick : SDL_Joystick )=>int" },
  { dao__SDL_JoystickUpdate, "SDL_JoystickUpdate(  )" },
  { dao__SDL_JoystickEventState, "SDL_JoystickEventState( state : int )=>int" },
  { dao__SDL_JoystickGetAxis, "SDL_JoystickGetAxis( joystick : SDL_Joystick, axis : int )=>int" },
  { dao__SDL_JoystickGetHat, "SDL_JoystickGetHat( joystick : SDL_Joystick, hat : int )=>int" },
  { dao__SDL_JoystickGetBall, "SDL_JoystickGetBall( joystick : SDL_Joystick, ball : int, dx : int, dy : int )=>int" },
  { dao__SDL_JoystickGetButton, "SDL_JoystickGetButton( joystick : SDL_Joystick, button : int )=>int" },
  { dao__SDL_JoystickClose, "SDL_JoystickClose( joystick : SDL_Joystick )" },
  { dao__SDL_LoadObject, "SDL_LoadObject( sofile : string )=>cdata" },
  { dao__SDL_LoadFunction, "SDL_LoadFunction( handle : cdata, name : string )=>cdata" },
  { dao__SDL_UnloadObject, "SDL_UnloadObject( handle : cdata )" },
  { dao__SDL_CreateMutex, "SDL_CreateMutex(  )=>SDL_mutex" },
  { dao__SDL_mutexP, "SDL_mutexP( mutex : SDL_mutex )=>int" },
  { dao__SDL_mutexV, "SDL_mutexV( mutex : SDL_mutex )=>int" },
  { dao__SDL_DestroyMutex, "SDL_DestroyMutex( mutex : SDL_mutex )" },
  { dao__SDL_CreateSemaphore, "SDL_CreateSemaphore( initial_value : int )=>SDL_sem" },
  { dao__SDL_DestroySemaphore, "SDL_DestroySemaphore( sem : SDL_sem )" },
  { dao__SDL_SemWait, "SDL_SemWait( sem : SDL_sem )=>int" },
  { dao__SDL_SemTryWait, "SDL_SemTryWait( sem : SDL_sem )=>int" },
  { dao__SDL_SemWaitTimeout, "SDL_SemWaitTimeout( sem : SDL_sem, ms : int )=>int" },
  { dao__SDL_SemPost, "SDL_SemPost( sem : SDL_sem )=>int" },
  { dao__SDL_SemValue, "SDL_SemValue( sem : SDL_sem )=>int" },
  { dao__SDL_CreateCond, "SDL_CreateCond(  )=>SDL_cond" },
  { dao__SDL_DestroyCond, "SDL_DestroyCond( cond : SDL_cond )" },
  { dao__SDL_CondSignal, "SDL_CondSignal( cond : SDL_cond )=>int" },
  { dao__SDL_CondBroadcast, "SDL_CondBroadcast( cond : SDL_cond )=>int" },
  { dao__SDL_CondWait, "SDL_CondWait( cond : SDL_cond, mut : SDL_mutex )=>int" },
  { dao__SDL_CondWaitTimeout, "SDL_CondWaitTimeout( cond : SDL_cond, mutex : SDL_mutex, ms : int )=>int" },
  { dao__SDL_ThreadID, "SDL_ThreadID(  )=>int" },
  { dao__SDL_GetThreadID, "SDL_GetThreadID( thread : SDL_Thread )=>int" },
  { dao__SDL_WaitThread, "SDL_WaitThread( thread : SDL_Thread, status : int )" },
  { dao__SDL_KillThread, "SDL_KillThread( thread : SDL_Thread )" },
  { dao__SDL_GetTicks, "SDL_GetTicks(  )=>int" },
  { dao__SDL_Delay, "SDL_Delay( ms : int )" },
  { dao__SDL_RemoveTimer, "SDL_RemoveTimer( t : SDL_TimerID )=>int" },
  { dao__SDL_GetError, "SDL_GetError(  )=>string" },
  { dao__SDL_ClearError, "SDL_ClearError(  )" },
  { dao__SDL_Error, "SDL_Error( code : int )" },
  { dao__SDL_VideoInit, "SDL_VideoInit( driver_name : string, flags : int )=>int" },
  { dao__SDL_VideoQuit, "SDL_VideoQuit(  )" },
  { dao__SDL_VideoDriverName, "SDL_VideoDriverName( namebuf : string, maxlen : int )=>string" },
  { dao__SDL_GetVideoSurface, "SDL_GetVideoSurface(  )=>SDL_Surface" },
  { dao__SDL_GetVideoInfo, "SDL_GetVideoInfo(  )=>SDL_VideoInfo" },
  { dao__SDL_VideoModeOK, "SDL_VideoModeOK( width : int, height : int, bpp : int, flags : int )=>int" },
  { dao__SDL_SetVideoMode, "SDL_SetVideoMode( width : int, height : int, bpp : int, flags : int )=>SDL_Surface" },
  { dao__SDL_UpdateRects, "SDL_UpdateRects( screen : SDL_Surface, numrects : int, rects : SDL_Rect )" },
  { dao__SDL_UpdateRect, "SDL_UpdateRect( screen : SDL_Surface, x : int, y : int, w : int, h : int )" },
  { dao__SDL_Flip, "SDL_Flip( screen : SDL_Surface )=>int" },
  { dao__SDL_SetGamma, "SDL_SetGamma( red : float, green : float, blue : float )=>int" },
  { dao__SDL_SetGammaRamp, "SDL_SetGammaRamp( red : array<int>, green : array<int>, blue : array<int> )=>int" },
  { dao__SDL_GetGammaRamp, "SDL_GetGammaRamp( red : int, green : int, blue : int )=>int" },
  { dao__SDL_SetColors, "SDL_SetColors( surface : SDL_Surface, colors : SDL_Color, firstcolor : int, ncolors : int )=>int" },
  { dao__SDL_SetPalette, "SDL_SetPalette( surface : SDL_Surface, flags : int, colors : SDL_Color, firstcolor : int, ncolors : int )=>int" },
  { dao__SDL_MapRGB, "SDL_MapRGB( format : SDL_PixelFormat, r : int, g : int, b : int )=>int" },
  { dao__SDL_MapRGBA, "SDL_MapRGBA( format : SDL_PixelFormat, r : int, g : int, b : int, a : int )=>int" },
  { dao__SDL_GetRGB, "SDL_GetRGB( pixel : int, fmt : SDL_PixelFormat, r : int, g : int, b : int )" },
  { dao__SDL_GetRGBA, "SDL_GetRGBA( pixel : int, fmt : SDL_PixelFormat, r : int, g : int, b : int, a : int )" },
  { dao__SDL_CreateRGBSurface, "SDL_CreateRGBSurface( flags : int, width : int, height : int, depth : int, Rmask : int, Gmask : int, Bmask : int, Amask : int )=>SDL_Surface" },
  { dao__SDL_CreateRGBSurfaceFrom, "SDL_CreateRGBSurfaceFrom( pixels : cdata, width : int, height : int, depth : int, pitch : int, Rmask : int, Gmask : int, Bmask : int, Amask : int )=>SDL_Surface" },
  { dao__SDL_FreeSurface, "SDL_FreeSurface( surface : SDL_Surface )" },
  { dao__SDL_LockSurface, "SDL_LockSurface( surface : SDL_Surface )=>int" },
  { dao__SDL_UnlockSurface, "SDL_UnlockSurface( surface : SDL_Surface )" },
  { dao__SDL_LoadBMP_RW, "SDL_LoadBMP_RW( src : SDL_RWops, freesrc : int )=>SDL_Surface" },
  { dao__SDL_SaveBMP_RW, "SDL_SaveBMP_RW( surface : SDL_Surface, dst : SDL_RWops, freedst : int )=>int" },
  { dao__SDL_SetColorKey, "SDL_SetColorKey( surface : SDL_Surface, flag : int, key : int )=>int" },
  { dao__SDL_SetAlpha, "SDL_SetAlpha( surface : SDL_Surface, flag : int, alpha : int )=>int" },
  { dao__SDL_SetClipRect, "SDL_SetClipRect( surface : SDL_Surface, rect : SDL_Rect )=>int" },
  { dao__SDL_GetClipRect, "SDL_GetClipRect( surface : SDL_Surface, rect : SDL_Rect )" },
  { dao__SDL_ConvertSurface, "SDL_ConvertSurface( src : SDL_Surface, fmt : SDL_PixelFormat, flags : int )=>SDL_Surface" },
  { dao__SDL_UpperBlit, "SDL_UpperBlit( src : SDL_Surface, srcrect : SDL_Rect, dst : SDL_Surface, dstrect : SDL_Rect )=>int" },
  { dao__SDL_LowerBlit, "SDL_LowerBlit( src : SDL_Surface, srcrect : SDL_Rect, dst : SDL_Surface, dstrect : SDL_Rect )=>int" },
  { dao__SDL_FillRect, "SDL_FillRect( dst : SDL_Surface, dstrect : SDL_Rect, color : int )=>int" },
  { dao__SDL_DisplayFormat, "SDL_DisplayFormat( surface : SDL_Surface )=>SDL_Surface" },
  { dao__SDL_DisplayFormatAlpha, "SDL_DisplayFormatAlpha( surface : SDL_Surface )=>SDL_Surface" },
  { dao__SDL_CreateYUVOverlay, "SDL_CreateYUVOverlay( width : int, height : int, format : int, display : SDL_Surface )=>SDL_Overlay" },
  { dao__SDL_LockYUVOverlay, "SDL_LockYUVOverlay( overlay : SDL_Overlay )=>int" },
  { dao__SDL_UnlockYUVOverlay, "SDL_UnlockYUVOverlay( overlay : SDL_Overlay )" },
  { dao__SDL_DisplayYUVOverlay, "SDL_DisplayYUVOverlay( overlay : SDL_Overlay, dstrect : SDL_Rect )=>int" },
  { dao__SDL_FreeYUVOverlay, "SDL_FreeYUVOverlay( overlay : SDL_Overlay )" },
  { dao__SDL_GL_LoadLibrary, "SDL_GL_LoadLibrary( path : string )=>int" },
  { dao__SDL_GL_GetProcAddress, "SDL_GL_GetProcAddress( proc : string )=>cdata" },
  { dao__SDL_GL_SetAttribute, "SDL_GL_SetAttribute( attr : int, value : int )=>int" },
  { dao__SDL_GL_GetAttribute, "SDL_GL_GetAttribute( attr : int, value : int )=>int" },
  { dao__SDL_GL_SwapBuffers, "SDL_GL_SwapBuffers(  )" },
  { dao__SDL_GL_UpdateRects, "SDL_GL_UpdateRects( numrects : int, rects : SDL_Rect )" },
  { dao__SDL_GL_Lock, "SDL_GL_Lock(  )" },
  { dao__SDL_GL_Unlock, "SDL_GL_Unlock(  )" },
  { dao__SDL_WM_SetCaption, "SDL_WM_SetCaption( title : string, icon : string )" },
  { dao__SDL_WM_GetCaption, "SDL_WM_GetCaption( title : string, icon : string )" },
  { dao__SDL_WM_SetIcon, "SDL_WM_SetIcon( icon : SDL_Surface, mask : int )" },
  { dao__SDL_WM_IconifyWindow, "SDL_WM_IconifyWindow(  )=>int" },
  { dao__SDL_WM_ToggleFullScreen, "SDL_WM_ToggleFullScreen( surface : SDL_Surface )=>int" },
  { dao__SDL_WM_GrabInput, "SDL_WM_GrabInput( mode : int )=>int" },
  { dao__SDL_SoftStretch, "SDL_SoftStretch( src : SDL_Surface, srcrect : SDL_Rect, dst : SDL_Surface, dstrect : SDL_Rect )=>int" },
  { dao__SDL_EnableUNICODE, "SDL_EnableUNICODE( enable : int )=>int" },
  { dao__SDL_EnableKeyRepeat, "SDL_EnableKeyRepeat( delay : int, interval : int )=>int" },
  { dao__SDL_GetKeyRepeat, "SDL_GetKeyRepeat( delay : int, interval : int )" },
  { dao__SDL_GetKeyState, "SDL_GetKeyState( numkeys : int )=>array<int>" },
  { dao__SDL_GetModState, "SDL_GetModState(  )=>int" },
  { dao__SDL_SetModState, "SDL_SetModState( modstate : int )" },
  { dao__SDL_GetKeyName, "SDL_GetKeyName( key : int )=>string" },
  { dao__SDL_GetMouseState, "SDL_GetMouseState( x : int, y : int )=>int" },
  { dao__SDL_GetRelativeMouseState, "SDL_GetRelativeMouseState( x : int, y : int )=>int" },
  { dao__SDL_WarpMouse, "SDL_WarpMouse( x : int, y : int )" },
  { dao__SDL_CreateCursor, "SDL_CreateCursor( data : int, mask : array<int>, w : int, h : int, hot_x : int, hot_y : int )=>SDL_Cursor" },
  { dao__SDL_SetCursor, "SDL_SetCursor( cursor : SDL_Cursor )" },
  { dao__SDL_GetCursor, "SDL_GetCursor(  )=>SDL_Cursor" },
  { dao__SDL_FreeCursor, "SDL_FreeCursor( cursor : SDL_Cursor )" },
  { dao__SDL_ShowCursor, "SDL_ShowCursor( toggle : int )=>int" },
  { dao__SDL_PumpEvents, "SDL_PumpEvents(  )" },
  { dao__SDL_PeepEvents, "SDL_PeepEvents( events : SDL_Event, numevents : int, action : int, mask : int )=>int" },
  { dao__SDL_PollEvent, "SDL_PollEvent( event : SDL_Event )=>int" },
  { dao__SDL_WaitEvent, "SDL_WaitEvent( event : SDL_Event )=>int" },
  { dao__SDL_PushEvent, "SDL_PushEvent( event : SDL_Event )=>int" },
  { dao__SDL_EventState, "SDL_EventState( type : int, state : int )=>int" },
  { dao__SDL_RWFromFile, "SDL_RWFromFile( file : string, mode : string )=>SDL_RWops" },
  { dao__SDL_RWFromFP, "SDL_RWFromFP( fp : stream, autoclose : int )=>SDL_RWops" },
  { dao__SDL_RWFromMem, "SDL_RWFromMem( mem : cdata, size : int )=>SDL_RWops" },
  { dao__SDL_RWFromConstMem, "SDL_RWFromConstMem( mem : cdata, size : int )=>SDL_RWops" },
  { dao__SDL_AllocRW, "SDL_AllocRW(  )=>SDL_RWops" },
  { dao__SDL_FreeRW, "SDL_FreeRW( area : SDL_RWops )" },
  { dao__SDL_ReadLE16, "SDL_ReadLE16( src : SDL_RWops )=>int" },
  { dao__SDL_ReadBE16, "SDL_ReadBE16( src : SDL_RWops )=>int" },
  { dao__SDL_ReadLE32, "SDL_ReadLE32( src : SDL_RWops )=>int" },
  { dao__SDL_ReadBE32, "SDL_ReadBE32( src : SDL_RWops )=>int" },
  { dao__SDL_ReadLE64, "SDL_ReadLE64( src : SDL_RWops )=>int" },
  { dao__SDL_ReadBE64, "SDL_ReadBE64( src : SDL_RWops )=>int" },
  { dao__SDL_WriteLE16, "SDL_WriteLE16( dst : SDL_RWops, value : int )=>int" },
  { dao__SDL_WriteBE16, "SDL_WriteBE16( dst : SDL_RWops, value : int )=>int" },
  { dao__SDL_WriteLE32, "SDL_WriteLE32( dst : SDL_RWops, value : int )=>int" },
  { dao__SDL_WriteBE32, "SDL_WriteBE32( dst : SDL_RWops, value : int )=>int" },
  { dao__SDL_WriteLE64, "SDL_WriteLE64( dst : SDL_RWops, value : int )=>int" },
  { dao__SDL_WriteBE64, "SDL_WriteBE64( dst : SDL_RWops, value : int )=>int" },
  { NULL, NULL }
};
/* SDL_stdinc.h */
static void dao__SDL_malloc( DaoContext *_ctx, DValue *_p[], int _n )
{
  size_t size= (size_t) _p[0]->v.i;

  void* _SDL_malloc = SDL_malloc( size );
  DaoContext_PutCPointer( _ctx, (void*) _SDL_malloc, 0 );
}
/* SDL_stdinc.h */
static void dao__SDL_calloc( DaoContext *_ctx, DValue *_p[], int _n )
{
  size_t nmemb= (size_t) _p[0]->v.i;
  size_t size= (size_t) _p[1]->v.i;

  void* _SDL_calloc = SDL_calloc( nmemb, size );
  DaoContext_PutCPointer( _ctx, (void*) _SDL_calloc, 0 );
}
/* SDL_stdinc.h */
static void dao__SDL_realloc( DaoContext *_ctx, DValue *_p[], int _n )
{
  void* mem= (void*) DValue_GetCData( _p[0] );
  size_t size= (size_t) _p[1]->v.i;

  void* _SDL_realloc = SDL_realloc( mem, size );
  DaoContext_PutCPointer( _ctx, (void*) _SDL_realloc, 0 );
}
/* SDL_stdinc.h */
static void dao__SDL_free( DaoContext *_ctx, DValue *_p[], int _n )
{
  void* mem= (void*) DValue_GetCData( _p[0] );

  SDL_free( mem );
}
/* SDL_stdinc.h */
static void dao__SDL_getenv( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* name= (char*) DValue_GetMBString( _p[0] );

  char* _SDL_getenv = SDL_getenv( name );
  DaoContext_PutMBString( _ctx, (char*) _SDL_getenv );
}
/* SDL_stdinc.h */
static void dao__SDL_putenv( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* variable= (char*) DValue_GetMBString( _p[0] );

  int _SDL_putenv = SDL_putenv( variable );
  DaoContext_PutInteger( _ctx, (int) _SDL_putenv );
}
/* SDL_stdinc.h */
static void dao__SDL_memset( DaoContext *_ctx, DValue *_p[], int _n )
{
  void* dst= (void*) DValue_GetCData( _p[0] );
  int c= (int) _p[1]->v.i;
  size_t len= (size_t) _p[2]->v.i;

  void* _SDL_memset = SDL_memset( dst, c, len );
  DaoContext_PutCPointer( _ctx, (void*) _SDL_memset, 0 );
}
/* SDL_stdinc.h */
static void dao__SDL_memcmp( DaoContext *_ctx, DValue *_p[], int _n )
{
  void* s1= (void*) DValue_GetCData( _p[0] );
  void* s2= (void*) DValue_GetCData( _p[1] );
  size_t len= (size_t) _p[2]->v.i;

  int _SDL_memcmp = SDL_memcmp( s1, s2, len );
  DaoContext_PutInteger( _ctx, (int) _SDL_memcmp );
}
/* SDL_stdinc.h */
static void dao__SDL_strlen( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* string= (char*) DValue_GetMBString( _p[0] );

  size_t _SDL_strlen = SDL_strlen( string );
  DaoContext_PutInteger( _ctx, (int) _SDL_strlen );
}
/* SDL_stdinc.h */
static void dao__SDL_strlcpy( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* dst= (char*) DValue_GetMBString( _p[0] );
  char* src= (char*) DValue_GetMBString( _p[1] );
  size_t maxlen= (size_t) _p[2]->v.i;

  size_t _SDL_strlcpy = SDL_strlcpy( dst, src, maxlen );
  DString_SetMBS( _p[0]->v.s, (char*) dst );
  DaoContext_PutInteger( _ctx, (int) _SDL_strlcpy );
}
/* SDL_stdinc.h */
static void dao__SDL_strlcat( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* dst= (char*) DValue_GetMBString( _p[0] );
  char* src= (char*) DValue_GetMBString( _p[1] );
  size_t maxlen= (size_t) _p[2]->v.i;

  size_t _SDL_strlcat = SDL_strlcat( dst, src, maxlen );
  DString_SetMBS( _p[0]->v.s, (char*) dst );
  DaoContext_PutInteger( _ctx, (int) _SDL_strlcat );
}
/* SDL_stdinc.h */
static void dao__SDL_strdup( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* string= (char*) DValue_GetMBString( _p[0] );

  char* _SDL_strdup = SDL_strdup( string );
  DaoContext_PutMBString( _ctx, (char*) _SDL_strdup );
}
/* SDL_stdinc.h */
static void dao__SDL_strrev( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* string= (char*) DValue_GetMBString( _p[0] );

  char* _SDL_strrev = SDL_strrev( string );
  DString_SetMBS( _p[0]->v.s, (char*) string );
  DaoContext_PutMBString( _ctx, (char*) _SDL_strrev );
}
/* SDL_stdinc.h */
static void dao__SDL_strupr( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* string= (char*) DValue_GetMBString( _p[0] );

  char* _SDL_strupr = SDL_strupr( string );
  DString_SetMBS( _p[0]->v.s, (char*) string );
  DaoContext_PutMBString( _ctx, (char*) _SDL_strupr );
}
/* SDL_stdinc.h */
static void dao__SDL_strlwr( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* string= (char*) DValue_GetMBString( _p[0] );

  char* _SDL_strlwr = SDL_strlwr( string );
  DString_SetMBS( _p[0]->v.s, (char*) string );
  DaoContext_PutMBString( _ctx, (char*) _SDL_strlwr );
}
/* SDL_stdinc.h */
static void dao__SDL_strchr( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* string= (char*) DValue_GetMBString( _p[0] );
  int c= (int) _p[1]->v.i;

  char* _SDL_strchr = SDL_strchr( string, c );
  DaoContext_PutMBString( _ctx, (char*) _SDL_strchr );
}
/* SDL_stdinc.h */
static void dao__SDL_strrchr( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* string= (char*) DValue_GetMBString( _p[0] );
  int c= (int) _p[1]->v.i;

  char* _SDL_strrchr = SDL_strrchr( string, c );
  DaoContext_PutMBString( _ctx, (char*) _SDL_strrchr );
}
/* SDL_stdinc.h */
static void dao__SDL_strstr( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* haystack= (char*) DValue_GetMBString( _p[0] );
  char* needle= (char*) DValue_GetMBString( _p[1] );

  char* _SDL_strstr = SDL_strstr( haystack, needle );
  DaoContext_PutMBString( _ctx, (char*) _SDL_strstr );
}
/* SDL_stdinc.h */
static void dao__SDL_ltoa( DaoContext *_ctx, DValue *_p[], int _n )
{
  long value= (long) _p[0]->v.i;
  char* string= (char*) DValue_GetMBString( _p[1] );
  int radix= (int) _p[2]->v.i;

  char* _SDL_ltoa = SDL_ltoa( value, string, radix );
  DString_SetMBS( _p[1]->v.s, (char*) string );
  DaoContext_PutMBString( _ctx, (char*) _SDL_ltoa );
}
/* SDL_stdinc.h */
static void dao__SDL_ultoa( DaoContext *_ctx, DValue *_p[], int _n )
{
  unsigned long value= (unsigned long) _p[0]->v.i;
  char* string= (char*) DValue_GetMBString( _p[1] );
  int radix= (int) _p[2]->v.i;

  char* _SDL_ultoa = SDL_ultoa( value, string, radix );
  DString_SetMBS( _p[1]->v.s, (char*) string );
  DaoContext_PutMBString( _ctx, (char*) _SDL_ultoa );
}
/* SDL_stdinc.h */
static void dao__SDL_strtol( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* string= (char*) DValue_GetMBString( _p[0] );
  char* endp_old = (char*)DValue_GetMBString( _p[1] );
  size_t endp_len = strlen( endp_old );
  char* endp = (char*) malloc( endp_len + 1 );
  void* endp_p = strncpy( endp, endp_old, endp_len );
  int base= (int) _p[2]->v.i;

  long _SDL_strtol = SDL_strtol( string, & endp, base );
  DString_SetMBS( _p[1]->v.s, (char*) endp );
  free( endp );
  DaoContext_PutInteger( _ctx, (int) _SDL_strtol );
}
/* SDL_stdinc.h */
static void dao__SDL_strtoul( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* string= (char*) DValue_GetMBString( _p[0] );
  char* endp_old = (char*)DValue_GetMBString( _p[1] );
  size_t endp_len = strlen( endp_old );
  char* endp = (char*) malloc( endp_len + 1 );
  void* endp_p = strncpy( endp, endp_old, endp_len );
  int base= (int) _p[2]->v.i;

  unsigned long _SDL_strtoul = SDL_strtoul( string, & endp, base );
  DString_SetMBS( _p[1]->v.s, (char*) endp );
  free( endp );
  DaoContext_PutInteger( _ctx, (int) _SDL_strtoul );
}
/* SDL_stdinc.h */
static void dao__SDL_lltoa( DaoContext *_ctx, DValue *_p[], int _n )
{
  Sint64 value= (Sint64) _p[0]->v.i;
  char* string= (char*) DValue_GetMBString( _p[1] );
  int radix= (int) _p[2]->v.i;

  char* _SDL_lltoa = SDL_lltoa( value, string, radix );
  DString_SetMBS( _p[1]->v.s, (char*) string );
  DaoContext_PutMBString( _ctx, (char*) _SDL_lltoa );
}
/* SDL_stdinc.h */
static void dao__SDL_ulltoa( DaoContext *_ctx, DValue *_p[], int _n )
{
  Uint64 value= (Uint64) _p[0]->v.i;
  char* string= (char*) DValue_GetMBString( _p[1] );
  int radix= (int) _p[2]->v.i;

  char* _SDL_ulltoa = SDL_ulltoa( value, string, radix );
  DString_SetMBS( _p[1]->v.s, (char*) string );
  DaoContext_PutMBString( _ctx, (char*) _SDL_ulltoa );
}
/* SDL_stdinc.h */
static void dao__SDL_strtoll( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* string= (char*) DValue_GetMBString( _p[0] );
  char* endp_old = (char*)DValue_GetMBString( _p[1] );
  size_t endp_len = strlen( endp_old );
  char* endp = (char*) malloc( endp_len + 1 );
  void* endp_p = strncpy( endp, endp_old, endp_len );
  int base= (int) _p[2]->v.i;

  Sint64 _SDL_strtoll = SDL_strtoll( string, & endp, base );
  DString_SetMBS( _p[1]->v.s, (char*) endp );
  free( endp );
  DaoContext_PutInteger( _ctx, (int) _SDL_strtoll );
}
/* SDL_stdinc.h */
static void dao__SDL_strtoull( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* string= (char*) DValue_GetMBString( _p[0] );
  char* endp_old = (char*)DValue_GetMBString( _p[1] );
  size_t endp_len = strlen( endp_old );
  char* endp = (char*) malloc( endp_len + 1 );
  void* endp_p = strncpy( endp, endp_old, endp_len );
  int base= (int) _p[2]->v.i;

  Uint64 _SDL_strtoull = SDL_strtoull( string, & endp, base );
  DString_SetMBS( _p[1]->v.s, (char*) endp );
  free( endp );
  DaoContext_PutInteger( _ctx, (int) _SDL_strtoull );
}
/* SDL_stdinc.h */
static void dao__SDL_strtod( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* string= (char*) DValue_GetMBString( _p[0] );
  char* endp_old = (char*)DValue_GetMBString( _p[1] );
  size_t endp_len = strlen( endp_old );
  char* endp = (char*) malloc( endp_len + 1 );
  void* endp_p = strncpy( endp, endp_old, endp_len );

  double _SDL_strtod = SDL_strtod( string, & endp );
  DString_SetMBS( _p[1]->v.s, (char*) endp );
  free( endp );
  DaoContext_PutDouble( _ctx, (double) _SDL_strtod );
}
/* SDL_stdinc.h */
static void dao__SDL_strcmp( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* str1= (char*) DValue_GetMBString( _p[0] );
  char* str2= (char*) DValue_GetMBString( _p[1] );

  int _SDL_strcmp = SDL_strcmp( str1, str2 );
  DaoContext_PutInteger( _ctx, (int) _SDL_strcmp );
}
/* SDL_stdinc.h */
static void dao__SDL_strncmp( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* str1= (char*) DValue_GetMBString( _p[0] );
  char* str2= (char*) DValue_GetMBString( _p[1] );
  size_t maxlen= (size_t) _p[2]->v.i;

  int _SDL_strncmp = SDL_strncmp( str1, str2, maxlen );
  DaoContext_PutInteger( _ctx, (int) _SDL_strncmp );
}
/* SDL_stdinc.h */
static void dao__SDL_strcasecmp( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* str1= (char*) DValue_GetMBString( _p[0] );
  char* str2= (char*) DValue_GetMBString( _p[1] );

  int _SDL_strcasecmp = SDL_strcasecmp( str1, str2 );
  DaoContext_PutInteger( _ctx, (int) _SDL_strcasecmp );
}
/* SDL_stdinc.h */
static void dao__SDL_strncasecmp( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* str1= (char*) DValue_GetMBString( _p[0] );
  char* str2= (char*) DValue_GetMBString( _p[1] );
  size_t maxlen= (size_t) _p[2]->v.i;

  int _SDL_strncasecmp = SDL_strncasecmp( str1, str2, maxlen );
  DaoContext_PutInteger( _ctx, (int) _SDL_strncasecmp );
}
/* SDL_stdinc.h */
static void dao__SDL_vsnprintf( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* text= (char*) DValue_GetMBString( _p[0] );
  size_t maxlen= (size_t) _p[1]->v.i;
  char* fmt= (char*) DValue_GetMBString( _p[2] );
  va_list* ap= (va_list*) DValue_CastCData( _p[3], dao_va_list_Typer );

  int _SDL_vsnprintf = SDL_vsnprintf( text, maxlen, fmt, *ap );
  DString_SetMBS( _p[0]->v.s, (char*) text );
  DaoContext_PutInteger( _ctx, (int) _SDL_vsnprintf );
}
/* SDL_stdinc.h */
static void dao__SDL_iconv( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_iconv_t* cd= (SDL_iconv_t*) DValue_CastCData( _p[0], dao_SDL_iconv_t_Typer );
  const char* inbuf= (const char*) DValue_GetMBString( _p[1] );
  size_t inbytesleft= (size_t) _p[2]->v.i;
  char* outbuf_old = (char*)DValue_GetMBString( _p[3] );
  size_t outbuf_len = strlen( outbuf_old );
  char* outbuf = (char*) malloc( outbuf_len + 1 );
  void* outbuf_p = strncpy( outbuf, outbuf_old, outbuf_len );
  size_t outbytesleft= (size_t) _p[4]->v.i;

  size_t _SDL_iconv = SDL_iconv( *cd, & inbuf, & inbytesleft, & outbuf, & outbytesleft );
  _p[2]->v.i = (int) inbytesleft;
  DString_SetMBS( _p[3]->v.s, (char*) outbuf );
  free( outbuf );
  _p[4]->v.i = (int) outbytesleft;
  DaoContext_PutInteger( _ctx, (int) _SDL_iconv );
}
/* SDL_stdinc.h */
static void dao__SDL_iconv_string( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* tocode= (char*) DValue_GetMBString( _p[0] );
  char* fromcode= (char*) DValue_GetMBString( _p[1] );
  char* inbuf= (char*) DValue_GetMBString( _p[2] );
  size_t inbytesleft= (size_t) _p[3]->v.i;

  char* _SDL_iconv_string = SDL_iconv_string( tocode, fromcode, inbuf, inbytesleft );
  DaoContext_PutMBString( _ctx, (char*) _SDL_iconv_string );
}
/* SDL.h */
static void dao__SDL_Init( DaoContext *_ctx, DValue *_p[], int _n )
{
  Uint32 flags= (Uint32) _p[0]->v.i;

  int _SDL_Init = SDL_Init( flags );
  DaoContext_PutInteger( _ctx, (int) _SDL_Init );
}
/* SDL.h */
static void dao__SDL_InitSubSystem( DaoContext *_ctx, DValue *_p[], int _n )
{
  Uint32 flags= (Uint32) _p[0]->v.i;

  int _SDL_InitSubSystem = SDL_InitSubSystem( flags );
  DaoContext_PutInteger( _ctx, (int) _SDL_InitSubSystem );
}
/* SDL.h */
static void dao__SDL_QuitSubSystem( DaoContext *_ctx, DValue *_p[], int _n )
{
  Uint32 flags= (Uint32) _p[0]->v.i;

  SDL_QuitSubSystem( flags );
}
/* SDL.h */
static void dao__SDL_WasInit( DaoContext *_ctx, DValue *_p[], int _n )
{
  Uint32 flags= (Uint32) _p[0]->v.i;

  Uint32 _SDL_WasInit = SDL_WasInit( flags );
  DaoContext_PutInteger( _ctx, (int) _SDL_WasInit );
}
/* SDL.h */
static void dao__SDL_Quit( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_Quit(  );
}
/* SDL_active.h */
static void dao__SDL_GetAppState( DaoContext *_ctx, DValue *_p[], int _n )
{

  Uint8 _SDL_GetAppState = SDL_GetAppState(  );
  DaoContext_PutInteger( _ctx, (int) _SDL_GetAppState );
}
/* SDL_cdrom.h */
static void dao__SDL_CDNumDrives( DaoContext *_ctx, DValue *_p[], int _n )
{

  int _SDL_CDNumDrives = SDL_CDNumDrives(  );
  DaoContext_PutInteger( _ctx, (int) _SDL_CDNumDrives );
}
/* SDL_cdrom.h */
static void dao__SDL_CDName( DaoContext *_ctx, DValue *_p[], int _n )
{
  int drive= (int) _p[0]->v.i;

  const char* _SDL_CDName = SDL_CDName( drive );
  DaoContext_PutMBString( _ctx, (char*) _SDL_CDName );
}
/* SDL_cdrom.h */
static void dao__SDL_CDOpen( DaoContext *_ctx, DValue *_p[], int _n )
{
  int drive= (int) _p[0]->v.i;

  SDL_CD* _SDL_CDOpen = SDL_CDOpen( drive );
  DaoContext_WrapCData( _ctx, (void*) _SDL_CDOpen, dao_SDL_CD_Typer );
}
/* SDL_cdrom.h */
static void dao__SDL_CDStatus( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_CD* cdrom= (SDL_CD*) DValue_CastCData( _p[0], dao_SDL_CD_Typer );

  CDstatus _SDL_CDStatus = SDL_CDStatus( cdrom );
  DaoContext_PutInteger( _ctx, (int) _SDL_CDStatus );
}
/* SDL_cdrom.h */
static void dao__SDL_CDPlayTracks( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_CD* cdrom= (SDL_CD*) DValue_CastCData( _p[0], dao_SDL_CD_Typer );
  int start_track= (int) _p[1]->v.i;
  int start_frame= (int) _p[2]->v.i;
  int ntracks= (int) _p[3]->v.i;
  int nframes= (int) _p[4]->v.i;

  int _SDL_CDPlayTracks = SDL_CDPlayTracks( cdrom, start_track, start_frame, ntracks, nframes );
  DaoContext_PutInteger( _ctx, (int) _SDL_CDPlayTracks );
}
/* SDL_cdrom.h */
static void dao__SDL_CDPlay( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_CD* cdrom= (SDL_CD*) DValue_CastCData( _p[0], dao_SDL_CD_Typer );
  int start= (int) _p[1]->v.i;
  int length= (int) _p[2]->v.i;

  int _SDL_CDPlay = SDL_CDPlay( cdrom, start, length );
  DaoContext_PutInteger( _ctx, (int) _SDL_CDPlay );
}
/* SDL_cdrom.h */
static void dao__SDL_CDPause( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_CD* cdrom= (SDL_CD*) DValue_CastCData( _p[0], dao_SDL_CD_Typer );

  int _SDL_CDPause = SDL_CDPause( cdrom );
  DaoContext_PutInteger( _ctx, (int) _SDL_CDPause );
}
/* SDL_cdrom.h */
static void dao__SDL_CDResume( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_CD* cdrom= (SDL_CD*) DValue_CastCData( _p[0], dao_SDL_CD_Typer );

  int _SDL_CDResume = SDL_CDResume( cdrom );
  DaoContext_PutInteger( _ctx, (int) _SDL_CDResume );
}
/* SDL_cdrom.h */
static void dao__SDL_CDStop( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_CD* cdrom= (SDL_CD*) DValue_CastCData( _p[0], dao_SDL_CD_Typer );

  int _SDL_CDStop = SDL_CDStop( cdrom );
  DaoContext_PutInteger( _ctx, (int) _SDL_CDStop );
}
/* SDL_cdrom.h */
static void dao__SDL_CDEject( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_CD* cdrom= (SDL_CD*) DValue_CastCData( _p[0], dao_SDL_CD_Typer );

  int _SDL_CDEject = SDL_CDEject( cdrom );
  DaoContext_PutInteger( _ctx, (int) _SDL_CDEject );
}
/* SDL_cdrom.h */
static void dao__SDL_CDClose( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_CD* cdrom= (SDL_CD*) DValue_CastCData( _p[0], dao_SDL_CD_Typer );

  SDL_CDClose( cdrom );
}
/* SDL_cpuinfo.h */
static void dao__SDL_HasRDTSC( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_bool _SDL_HasRDTSC = SDL_HasRDTSC(  );
  DaoContext_PutInteger( _ctx, (int) _SDL_HasRDTSC );
}
/* SDL_cpuinfo.h */
static void dao__SDL_HasMMX( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_bool _SDL_HasMMX = SDL_HasMMX(  );
  DaoContext_PutInteger( _ctx, (int) _SDL_HasMMX );
}
/* SDL_cpuinfo.h */
static void dao__SDL_HasMMXExt( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_bool _SDL_HasMMXExt = SDL_HasMMXExt(  );
  DaoContext_PutInteger( _ctx, (int) _SDL_HasMMXExt );
}
/* SDL_cpuinfo.h */
static void dao__SDL_Has3DNow( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_bool _SDL_Has3DNow = SDL_Has3DNow(  );
  DaoContext_PutInteger( _ctx, (int) _SDL_Has3DNow );
}
/* SDL_cpuinfo.h */
static void dao__SDL_Has3DNowExt( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_bool _SDL_Has3DNowExt = SDL_Has3DNowExt(  );
  DaoContext_PutInteger( _ctx, (int) _SDL_Has3DNowExt );
}
/* SDL_cpuinfo.h */
static void dao__SDL_HasSSE( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_bool _SDL_HasSSE = SDL_HasSSE(  );
  DaoContext_PutInteger( _ctx, (int) _SDL_HasSSE );
}
/* SDL_cpuinfo.h */
static void dao__SDL_HasSSE2( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_bool _SDL_HasSSE2 = SDL_HasSSE2(  );
  DaoContext_PutInteger( _ctx, (int) _SDL_HasSSE2 );
}
/* SDL_cpuinfo.h */
static void dao__SDL_HasAltiVec( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_bool _SDL_HasAltiVec = SDL_HasAltiVec(  );
  DaoContext_PutInteger( _ctx, (int) _SDL_HasAltiVec );
}
/* SDL_audio.h */
static void dao__SDL_AudioInit( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* driver_name= (char*) DValue_GetMBString( _p[0] );

  int _SDL_AudioInit = SDL_AudioInit( driver_name );
  DaoContext_PutInteger( _ctx, (int) _SDL_AudioInit );
}
/* SDL_audio.h */
static void dao__SDL_AudioQuit( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_AudioQuit(  );
}
/* SDL_audio.h */
static void dao__SDL_AudioDriverName( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* namebuf= (char*) DValue_GetMBString( _p[0] );
  int maxlen= (int) _p[1]->v.i;

  char* _SDL_AudioDriverName = SDL_AudioDriverName( namebuf, maxlen );
  DString_SetMBS( _p[0]->v.s, (char*) namebuf );
  DaoContext_PutMBString( _ctx, (char*) _SDL_AudioDriverName );
}
/* SDL_audio.h */
static void dao__SDL_OpenAudio( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_AudioSpec* desired= (SDL_AudioSpec*) DValue_CastCData( _p[0], dao_SDL_AudioSpec_Typer );
  SDL_AudioSpec* obtained= (SDL_AudioSpec*) DValue_CastCData( _p[1], dao_SDL_AudioSpec_Typer );

  int _SDL_OpenAudio = SDL_OpenAudio( desired, obtained );
  DaoContext_PutInteger( _ctx, (int) _SDL_OpenAudio );
}
/* SDL_audio.h */
static void dao__SDL_GetAudioStatus( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_audiostatus _SDL_GetAudioStatus = SDL_GetAudioStatus(  );
  DaoContext_PutInteger( _ctx, (int) _SDL_GetAudioStatus );
}
/* SDL_audio.h */
static void dao__SDL_PauseAudio( DaoContext *_ctx, DValue *_p[], int _n )
{
  int pause_on= (int) _p[0]->v.i;

  SDL_PauseAudio( pause_on );
}
/* SDL_audio.h */
static void dao__SDL_FreeWAV( DaoContext *_ctx, DValue *_p[], int _n )
{
  Uint8 audio_buf= (Uint8) _p[0]->v.i;

  SDL_FreeWAV( & audio_buf );
  _p[0]->v.i = (int) audio_buf;
}
/* SDL_audio.h */
static void dao__SDL_BuildAudioCVT( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_AudioCVT* cvt= (SDL_AudioCVT*) DValue_CastCData( _p[0], dao_SDL_AudioCVT_Typer );
  Uint16 src_format= (Uint16) _p[1]->v.i;
  Uint8 src_channels= (Uint8) _p[2]->v.i;
  int src_rate= (int) _p[3]->v.i;
  Uint16 dst_format= (Uint16) _p[4]->v.i;
  Uint8 dst_channels= (Uint8) _p[5]->v.i;
  int dst_rate= (int) _p[6]->v.i;

  int _SDL_BuildAudioCVT = SDL_BuildAudioCVT( cvt, src_format, src_channels, src_rate, dst_format, dst_channels, dst_rate );
  DaoContext_PutInteger( _ctx, (int) _SDL_BuildAudioCVT );
}
/* SDL_audio.h */
static void dao__SDL_ConvertAudio( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_AudioCVT* cvt= (SDL_AudioCVT*) DValue_CastCData( _p[0], dao_SDL_AudioCVT_Typer );

  int _SDL_ConvertAudio = SDL_ConvertAudio( cvt );
  DaoContext_PutInteger( _ctx, (int) _SDL_ConvertAudio );
}
/* SDL_audio.h */
static void dao__SDL_MixAudio( DaoContext *_ctx, DValue *_p[], int _n )
{
  Uint8 dst= (Uint8) _p[0]->v.i;
  Uint8* src= (Uint8*) DaoArray_ToUInt( _p[1]->v.array );
  Uint32 len= (Uint32) _p[2]->v.i;
  int volume= (int) _p[3]->v.i;

  SDL_MixAudio( & dst, src, len, volume );
  _p[0]->v.i = (int) dst;
}
/* SDL_audio.h */
static void dao__SDL_LockAudio( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_LockAudio(  );
}
/* SDL_audio.h */
static void dao__SDL_UnlockAudio( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_UnlockAudio(  );
}
/* SDL_audio.h */
static void dao__SDL_CloseAudio( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_CloseAudio(  );
}
/* SDL_joystick.h */
static void dao__SDL_NumJoysticks( DaoContext *_ctx, DValue *_p[], int _n )
{

  int _SDL_NumJoysticks = SDL_NumJoysticks(  );
  DaoContext_PutInteger( _ctx, (int) _SDL_NumJoysticks );
}
/* SDL_joystick.h */
static void dao__SDL_JoystickName( DaoContext *_ctx, DValue *_p[], int _n )
{
  int device_index= (int) _p[0]->v.i;

  const char* _SDL_JoystickName = SDL_JoystickName( device_index );
  DaoContext_PutMBString( _ctx, (char*) _SDL_JoystickName );
}
/* SDL_joystick.h */
static void dao__SDL_JoystickOpen( DaoContext *_ctx, DValue *_p[], int _n )
{
  int device_index= (int) _p[0]->v.i;

  SDL_Joystick* _SDL_JoystickOpen = SDL_JoystickOpen( device_index );
  DaoContext_WrapCData( _ctx, (void*) _SDL_JoystickOpen, dao_SDL_Joystick_Typer );
}
/* SDL_joystick.h */
static void dao__SDL_JoystickOpened( DaoContext *_ctx, DValue *_p[], int _n )
{
  int device_index= (int) _p[0]->v.i;

  int _SDL_JoystickOpened = SDL_JoystickOpened( device_index );
  DaoContext_PutInteger( _ctx, (int) _SDL_JoystickOpened );
}
/* SDL_joystick.h */
static void dao__SDL_JoystickIndex( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Joystick* joystick= (SDL_Joystick*) DValue_CastCData( _p[0], dao_SDL_Joystick_Typer );

  int _SDL_JoystickIndex = SDL_JoystickIndex( joystick );
  DaoContext_PutInteger( _ctx, (int) _SDL_JoystickIndex );
}
/* SDL_joystick.h */
static void dao__SDL_JoystickNumAxes( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Joystick* joystick= (SDL_Joystick*) DValue_CastCData( _p[0], dao_SDL_Joystick_Typer );

  int _SDL_JoystickNumAxes = SDL_JoystickNumAxes( joystick );
  DaoContext_PutInteger( _ctx, (int) _SDL_JoystickNumAxes );
}
/* SDL_joystick.h */
static void dao__SDL_JoystickNumBalls( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Joystick* joystick= (SDL_Joystick*) DValue_CastCData( _p[0], dao_SDL_Joystick_Typer );

  int _SDL_JoystickNumBalls = SDL_JoystickNumBalls( joystick );
  DaoContext_PutInteger( _ctx, (int) _SDL_JoystickNumBalls );
}
/* SDL_joystick.h */
static void dao__SDL_JoystickNumHats( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Joystick* joystick= (SDL_Joystick*) DValue_CastCData( _p[0], dao_SDL_Joystick_Typer );

  int _SDL_JoystickNumHats = SDL_JoystickNumHats( joystick );
  DaoContext_PutInteger( _ctx, (int) _SDL_JoystickNumHats );
}
/* SDL_joystick.h */
static void dao__SDL_JoystickNumButtons( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Joystick* joystick= (SDL_Joystick*) DValue_CastCData( _p[0], dao_SDL_Joystick_Typer );

  int _SDL_JoystickNumButtons = SDL_JoystickNumButtons( joystick );
  DaoContext_PutInteger( _ctx, (int) _SDL_JoystickNumButtons );
}
/* SDL_joystick.h */
static void dao__SDL_JoystickUpdate( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_JoystickUpdate(  );
}
/* SDL_joystick.h */
static void dao__SDL_JoystickEventState( DaoContext *_ctx, DValue *_p[], int _n )
{
  int state= (int) _p[0]->v.i;

  int _SDL_JoystickEventState = SDL_JoystickEventState( state );
  DaoContext_PutInteger( _ctx, (int) _SDL_JoystickEventState );
}
/* SDL_joystick.h */
static void dao__SDL_JoystickGetAxis( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Joystick* joystick= (SDL_Joystick*) DValue_CastCData( _p[0], dao_SDL_Joystick_Typer );
  int axis= (int) _p[1]->v.i;

  Sint16 _SDL_JoystickGetAxis = SDL_JoystickGetAxis( joystick, axis );
  DaoContext_PutInteger( _ctx, (int) _SDL_JoystickGetAxis );
}
/* SDL_joystick.h */
static void dao__SDL_JoystickGetHat( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Joystick* joystick= (SDL_Joystick*) DValue_CastCData( _p[0], dao_SDL_Joystick_Typer );
  int hat= (int) _p[1]->v.i;

  Uint8 _SDL_JoystickGetHat = SDL_JoystickGetHat( joystick, hat );
  DaoContext_PutInteger( _ctx, (int) _SDL_JoystickGetHat );
}
/* SDL_joystick.h */
static void dao__SDL_JoystickGetBall( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Joystick* joystick= (SDL_Joystick*) DValue_CastCData( _p[0], dao_SDL_Joystick_Typer );
  int ball= (int) _p[1]->v.i;
  int dx= (int) _p[2]->v.i;
  int dy= (int) _p[3]->v.i;

  int _SDL_JoystickGetBall = SDL_JoystickGetBall( joystick, ball, & dx, & dy );
  _p[2]->v.i = (int) dx;
  _p[3]->v.i = (int) dy;
  DaoContext_PutInteger( _ctx, (int) _SDL_JoystickGetBall );
}
/* SDL_joystick.h */
static void dao__SDL_JoystickGetButton( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Joystick* joystick= (SDL_Joystick*) DValue_CastCData( _p[0], dao_SDL_Joystick_Typer );
  int button= (int) _p[1]->v.i;

  Uint8 _SDL_JoystickGetButton = SDL_JoystickGetButton( joystick, button );
  DaoContext_PutInteger( _ctx, (int) _SDL_JoystickGetButton );
}
/* SDL_joystick.h */
static void dao__SDL_JoystickClose( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Joystick* joystick= (SDL_Joystick*) DValue_CastCData( _p[0], dao_SDL_Joystick_Typer );

  SDL_JoystickClose( joystick );
}
/* SDL_loadso.h */
static void dao__SDL_LoadObject( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* sofile= (char*) DValue_GetMBString( _p[0] );

  void* _SDL_LoadObject = SDL_LoadObject( sofile );
  DaoContext_PutCPointer( _ctx, (void*) _SDL_LoadObject, 0 );
}
/* SDL_loadso.h */
static void dao__SDL_LoadFunction( DaoContext *_ctx, DValue *_p[], int _n )
{
  void* handle= (void*) DValue_GetCData( _p[0] );
  char* name= (char*) DValue_GetMBString( _p[1] );

  void* _SDL_LoadFunction = SDL_LoadFunction( handle, name );
  DaoContext_PutCPointer( _ctx, (void*) _SDL_LoadFunction, 0 );
}
/* SDL_loadso.h */
static void dao__SDL_UnloadObject( DaoContext *_ctx, DValue *_p[], int _n )
{
  void* handle= (void*) DValue_GetCData( _p[0] );

  SDL_UnloadObject( handle );
}
/* SDL_mutex.h */
static void dao__SDL_CreateMutex( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_mutex* _SDL_CreateMutex = SDL_CreateMutex(  );
  DaoContext_WrapCData( _ctx, (void*) _SDL_CreateMutex, dao_SDL_mutex_Typer );
}
/* SDL_mutex.h */
static void dao__SDL_mutexP( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_mutex* mutex= (SDL_mutex*) DValue_CastCData( _p[0], dao_SDL_mutex_Typer );

  int _SDL_mutexP = SDL_mutexP( mutex );
  DaoContext_PutInteger( _ctx, (int) _SDL_mutexP );
}
/* SDL_mutex.h */
static void dao__SDL_mutexV( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_mutex* mutex= (SDL_mutex*) DValue_CastCData( _p[0], dao_SDL_mutex_Typer );

  int _SDL_mutexV = SDL_mutexV( mutex );
  DaoContext_PutInteger( _ctx, (int) _SDL_mutexV );
}
/* SDL_mutex.h */
static void dao__SDL_DestroyMutex( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_mutex* mutex= (SDL_mutex*) DValue_CastCData( _p[0], dao_SDL_mutex_Typer );

  SDL_DestroyMutex( mutex );
}
/* SDL_mutex.h */
static void dao__SDL_CreateSemaphore( DaoContext *_ctx, DValue *_p[], int _n )
{
  Uint32 initial_value= (Uint32) _p[0]->v.i;

  SDL_sem* _SDL_CreateSemaphore = SDL_CreateSemaphore( initial_value );
  DaoContext_WrapCData( _ctx, (void*) _SDL_CreateSemaphore, dao_SDL_sem_Typer );
}
/* SDL_mutex.h */
static void dao__SDL_DestroySemaphore( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_sem* sem= (SDL_sem*) DValue_CastCData( _p[0], dao_SDL_sem_Typer );

  SDL_DestroySemaphore( sem );
}
/* SDL_mutex.h */
static void dao__SDL_SemWait( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_sem* sem= (SDL_sem*) DValue_CastCData( _p[0], dao_SDL_sem_Typer );

  int _SDL_SemWait = SDL_SemWait( sem );
  DaoContext_PutInteger( _ctx, (int) _SDL_SemWait );
}
/* SDL_mutex.h */
static void dao__SDL_SemTryWait( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_sem* sem= (SDL_sem*) DValue_CastCData( _p[0], dao_SDL_sem_Typer );

  int _SDL_SemTryWait = SDL_SemTryWait( sem );
  DaoContext_PutInteger( _ctx, (int) _SDL_SemTryWait );
}
/* SDL_mutex.h */
static void dao__SDL_SemWaitTimeout( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_sem* sem= (SDL_sem*) DValue_CastCData( _p[0], dao_SDL_sem_Typer );
  Uint32 ms= (Uint32) _p[1]->v.i;

  int _SDL_SemWaitTimeout = SDL_SemWaitTimeout( sem, ms );
  DaoContext_PutInteger( _ctx, (int) _SDL_SemWaitTimeout );
}
/* SDL_mutex.h */
static void dao__SDL_SemPost( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_sem* sem= (SDL_sem*) DValue_CastCData( _p[0], dao_SDL_sem_Typer );

  int _SDL_SemPost = SDL_SemPost( sem );
  DaoContext_PutInteger( _ctx, (int) _SDL_SemPost );
}
/* SDL_mutex.h */
static void dao__SDL_SemValue( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_sem* sem= (SDL_sem*) DValue_CastCData( _p[0], dao_SDL_sem_Typer );

  Uint32 _SDL_SemValue = SDL_SemValue( sem );
  DaoContext_PutInteger( _ctx, (int) _SDL_SemValue );
}
/* SDL_mutex.h */
static void dao__SDL_CreateCond( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_cond* _SDL_CreateCond = SDL_CreateCond(  );
  DaoContext_WrapCData( _ctx, (void*) _SDL_CreateCond, dao_SDL_cond_Typer );
}
/* SDL_mutex.h */
static void dao__SDL_DestroyCond( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_cond* cond= (SDL_cond*) DValue_CastCData( _p[0], dao_SDL_cond_Typer );

  SDL_DestroyCond( cond );
}
/* SDL_mutex.h */
static void dao__SDL_CondSignal( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_cond* cond= (SDL_cond*) DValue_CastCData( _p[0], dao_SDL_cond_Typer );

  int _SDL_CondSignal = SDL_CondSignal( cond );
  DaoContext_PutInteger( _ctx, (int) _SDL_CondSignal );
}
/* SDL_mutex.h */
static void dao__SDL_CondBroadcast( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_cond* cond= (SDL_cond*) DValue_CastCData( _p[0], dao_SDL_cond_Typer );

  int _SDL_CondBroadcast = SDL_CondBroadcast( cond );
  DaoContext_PutInteger( _ctx, (int) _SDL_CondBroadcast );
}
/* SDL_mutex.h */
static void dao__SDL_CondWait( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_cond* cond= (SDL_cond*) DValue_CastCData( _p[0], dao_SDL_cond_Typer );
  SDL_mutex* mut= (SDL_mutex*) DValue_CastCData( _p[1], dao_SDL_mutex_Typer );

  int _SDL_CondWait = SDL_CondWait( cond, mut );
  DaoContext_PutInteger( _ctx, (int) _SDL_CondWait );
}
/* SDL_mutex.h */
static void dao__SDL_CondWaitTimeout( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_cond* cond= (SDL_cond*) DValue_CastCData( _p[0], dao_SDL_cond_Typer );
  SDL_mutex* mutex= (SDL_mutex*) DValue_CastCData( _p[1], dao_SDL_mutex_Typer );
  Uint32 ms= (Uint32) _p[2]->v.i;

  int _SDL_CondWaitTimeout = SDL_CondWaitTimeout( cond, mutex, ms );
  DaoContext_PutInteger( _ctx, (int) _SDL_CondWaitTimeout );
}
/* SDL_thread.h */
static void dao__SDL_ThreadID( DaoContext *_ctx, DValue *_p[], int _n )
{

  Uint32 _SDL_ThreadID = SDL_ThreadID(  );
  DaoContext_PutInteger( _ctx, (int) _SDL_ThreadID );
}
/* SDL_thread.h */
static void dao__SDL_GetThreadID( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Thread* thread= (SDL_Thread*) DValue_CastCData( _p[0], dao_SDL_Thread_Typer );

  Uint32 _SDL_GetThreadID = SDL_GetThreadID( thread );
  DaoContext_PutInteger( _ctx, (int) _SDL_GetThreadID );
}
/* SDL_thread.h */
static void dao__SDL_WaitThread( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Thread* thread= (SDL_Thread*) DValue_CastCData( _p[0], dao_SDL_Thread_Typer );
  int status= (int) _p[1]->v.i;

  SDL_WaitThread( thread, & status );
  _p[1]->v.i = (int) status;
}
/* SDL_thread.h */
static void dao__SDL_KillThread( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Thread* thread= (SDL_Thread*) DValue_CastCData( _p[0], dao_SDL_Thread_Typer );

  SDL_KillThread( thread );
}
/* SDL_timer.h */
static void dao__SDL_GetTicks( DaoContext *_ctx, DValue *_p[], int _n )
{

  Uint32 _SDL_GetTicks = SDL_GetTicks(  );
  DaoContext_PutInteger( _ctx, (int) _SDL_GetTicks );
}
/* SDL_timer.h */
static void dao__SDL_Delay( DaoContext *_ctx, DValue *_p[], int _n )
{
  Uint32 ms= (Uint32) _p[0]->v.i;

  SDL_Delay( ms );
}
/* SDL_timer.h */
static void dao__SDL_RemoveTimer( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_TimerID t= (SDL_TimerID) DValue_CastCData( _p[0], dao_SDL_TimerID_Typer );

  SDL_bool _SDL_RemoveTimer = SDL_RemoveTimer( t );
  DaoContext_PutInteger( _ctx, (int) _SDL_RemoveTimer );
}
/* SDL_error.h */
static void dao__SDL_GetError( DaoContext *_ctx, DValue *_p[], int _n )
{

  char* _SDL_GetError = SDL_GetError(  );
  DaoContext_PutMBString( _ctx, (char*) _SDL_GetError );
}
/* SDL_error.h */
static void dao__SDL_ClearError( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_ClearError(  );
}
/* SDL_error.h */
static void dao__SDL_Error( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_errorcode code= (SDL_errorcode) _p[0]->v.i;

  SDL_Error( code );
}
/* SDL_video.h */
static void dao__SDL_VideoInit( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* driver_name= (char*) DValue_GetMBString( _p[0] );
  Uint32 flags= (Uint32) _p[1]->v.i;

  int _SDL_VideoInit = SDL_VideoInit( driver_name, flags );
  DaoContext_PutInteger( _ctx, (int) _SDL_VideoInit );
}
/* SDL_video.h */
static void dao__SDL_VideoQuit( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_VideoQuit(  );
}
/* SDL_video.h */
static void dao__SDL_VideoDriverName( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* namebuf= (char*) DValue_GetMBString( _p[0] );
  int maxlen= (int) _p[1]->v.i;

  char* _SDL_VideoDriverName = SDL_VideoDriverName( namebuf, maxlen );
  DString_SetMBS( _p[0]->v.s, (char*) namebuf );
  DaoContext_PutMBString( _ctx, (char*) _SDL_VideoDriverName );
}
/* SDL_video.h */
static void dao__SDL_GetVideoSurface( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_Surface* _SDL_GetVideoSurface = SDL_GetVideoSurface(  );
  DaoContext_WrapCData( _ctx, (void*) _SDL_GetVideoSurface, dao_SDL_Surface_Typer );
}
/* SDL_video.h */
static void dao__SDL_GetVideoInfo( DaoContext *_ctx, DValue *_p[], int _n )
{

  const SDL_VideoInfo* _SDL_GetVideoInfo = SDL_GetVideoInfo(  );
  DaoContext_WrapCData( _ctx, (void*) _SDL_GetVideoInfo, dao_SDL_VideoInfo_Typer );
}
/* SDL_video.h */
static void dao__SDL_VideoModeOK( DaoContext *_ctx, DValue *_p[], int _n )
{
  int width= (int) _p[0]->v.i;
  int height= (int) _p[1]->v.i;
  int bpp= (int) _p[2]->v.i;
  Uint32 flags= (Uint32) _p[3]->v.i;

  int _SDL_VideoModeOK = SDL_VideoModeOK( width, height, bpp, flags );
  DaoContext_PutInteger( _ctx, (int) _SDL_VideoModeOK );
}
/* SDL_video.h */
static void dao__SDL_SetVideoMode( DaoContext *_ctx, DValue *_p[], int _n )
{
  int width= (int) _p[0]->v.i;
  int height= (int) _p[1]->v.i;
  int bpp= (int) _p[2]->v.i;
  Uint32 flags= (Uint32) _p[3]->v.i;

  SDL_Surface* _SDL_SetVideoMode = SDL_SetVideoMode( width, height, bpp, flags );
  DaoContext_WrapCData( _ctx, (void*) _SDL_SetVideoMode, dao_SDL_Surface_Typer );
}
/* SDL_video.h */
static void dao__SDL_UpdateRects( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* screen= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );
  int numrects= (int) _p[1]->v.i;
  SDL_Rect* rects= (SDL_Rect*) DValue_CastCData( _p[2], dao_SDL_Rect_Typer );

  SDL_UpdateRects( screen, numrects, rects );
}
/* SDL_video.h */
static void dao__SDL_UpdateRect( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* screen= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );
  Sint32 x= (Sint32) _p[1]->v.i;
  Sint32 y= (Sint32) _p[2]->v.i;
  Uint32 w= (Uint32) _p[3]->v.i;
  Uint32 h= (Uint32) _p[4]->v.i;

  SDL_UpdateRect( screen, x, y, w, h );
}
/* SDL_video.h */
static void dao__SDL_Flip( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* screen= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );

  int _SDL_Flip = SDL_Flip( screen );
  DaoContext_PutInteger( _ctx, (int) _SDL_Flip );
}
/* SDL_video.h */
static void dao__SDL_SetGamma( DaoContext *_ctx, DValue *_p[], int _n )
{
  float red= (float) _p[0]->v.f;
  float green= (float) _p[1]->v.f;
  float blue= (float) _p[2]->v.f;

  int _SDL_SetGamma = SDL_SetGamma( red, green, blue );
  DaoContext_PutInteger( _ctx, (int) _SDL_SetGamma );
}
/* SDL_video.h */
static void dao__SDL_SetGammaRamp( DaoContext *_ctx, DValue *_p[], int _n )
{
  Uint16* red= (Uint16*) DaoArray_ToUInt( _p[0]->v.array );
  Uint16* green= (Uint16*) DaoArray_ToUInt( _p[1]->v.array );
  Uint16* blue= (Uint16*) DaoArray_ToUInt( _p[2]->v.array );

  int _SDL_SetGammaRamp = SDL_SetGammaRamp( red, green, blue );
  DaoContext_PutInteger( _ctx, (int) _SDL_SetGammaRamp );
}
/* SDL_video.h */
static void dao__SDL_GetGammaRamp( DaoContext *_ctx, DValue *_p[], int _n )
{
  Uint16 red= (Uint16) _p[0]->v.i;
  Uint16 green= (Uint16) _p[1]->v.i;
  Uint16 blue= (Uint16) _p[2]->v.i;

  int _SDL_GetGammaRamp = SDL_GetGammaRamp( & red, & green, & blue );
  _p[0]->v.i = (int) red;
  _p[1]->v.i = (int) green;
  _p[2]->v.i = (int) blue;
  DaoContext_PutInteger( _ctx, (int) _SDL_GetGammaRamp );
}
/* SDL_video.h */
static void dao__SDL_SetColors( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* surface= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );
  SDL_Color* colors= (SDL_Color*) DValue_CastCData( _p[1], dao_SDL_Color_Typer );
  int firstcolor= (int) _p[2]->v.i;
  int ncolors= (int) _p[3]->v.i;

  int _SDL_SetColors = SDL_SetColors( surface, colors, firstcolor, ncolors );
  DaoContext_PutInteger( _ctx, (int) _SDL_SetColors );
}
/* SDL_video.h */
static void dao__SDL_SetPalette( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* surface= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );
  int flags= (int) _p[1]->v.i;
  SDL_Color* colors= (SDL_Color*) DValue_CastCData( _p[2], dao_SDL_Color_Typer );
  int firstcolor= (int) _p[3]->v.i;
  int ncolors= (int) _p[4]->v.i;

  int _SDL_SetPalette = SDL_SetPalette( surface, flags, colors, firstcolor, ncolors );
  DaoContext_PutInteger( _ctx, (int) _SDL_SetPalette );
}
/* SDL_video.h */
static void dao__SDL_MapRGB( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_PixelFormat* format= (SDL_PixelFormat*) DValue_CastCData( _p[0], dao_SDL_PixelFormat_Typer );
  Uint8 r= (Uint8) _p[1]->v.i;
  Uint8 g= (Uint8) _p[2]->v.i;
  Uint8 b= (Uint8) _p[3]->v.i;

  Uint32 _SDL_MapRGB = SDL_MapRGB( format, r, g, b );
  DaoContext_PutInteger( _ctx, (int) _SDL_MapRGB );
}
/* SDL_video.h */
static void dao__SDL_MapRGBA( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_PixelFormat* format= (SDL_PixelFormat*) DValue_CastCData( _p[0], dao_SDL_PixelFormat_Typer );
  Uint8 r= (Uint8) _p[1]->v.i;
  Uint8 g= (Uint8) _p[2]->v.i;
  Uint8 b= (Uint8) _p[3]->v.i;
  Uint8 a= (Uint8) _p[4]->v.i;

  Uint32 _SDL_MapRGBA = SDL_MapRGBA( format, r, g, b, a );
  DaoContext_PutInteger( _ctx, (int) _SDL_MapRGBA );
}
/* SDL_video.h */
static void dao__SDL_GetRGB( DaoContext *_ctx, DValue *_p[], int _n )
{
  Uint32 pixel= (Uint32) _p[0]->v.i;
  SDL_PixelFormat* fmt= (SDL_PixelFormat*) DValue_CastCData( _p[1], dao_SDL_PixelFormat_Typer );
  Uint8 r= (Uint8) _p[2]->v.i;
  Uint8 g= (Uint8) _p[3]->v.i;
  Uint8 b= (Uint8) _p[4]->v.i;

  SDL_GetRGB( pixel, fmt, & r, & g, & b );
  _p[2]->v.i = (int) r;
  _p[3]->v.i = (int) g;
  _p[4]->v.i = (int) b;
}
/* SDL_video.h */
static void dao__SDL_GetRGBA( DaoContext *_ctx, DValue *_p[], int _n )
{
  Uint32 pixel= (Uint32) _p[0]->v.i;
  SDL_PixelFormat* fmt= (SDL_PixelFormat*) DValue_CastCData( _p[1], dao_SDL_PixelFormat_Typer );
  Uint8 r= (Uint8) _p[2]->v.i;
  Uint8 g= (Uint8) _p[3]->v.i;
  Uint8 b= (Uint8) _p[4]->v.i;
  Uint8 a= (Uint8) _p[5]->v.i;

  SDL_GetRGBA( pixel, fmt, & r, & g, & b, & a );
  _p[2]->v.i = (int) r;
  _p[3]->v.i = (int) g;
  _p[4]->v.i = (int) b;
  _p[5]->v.i = (int) a;
}
/* SDL_video.h */
static void dao__SDL_CreateRGBSurface( DaoContext *_ctx, DValue *_p[], int _n )
{
  Uint32 flags= (Uint32) _p[0]->v.i;
  int width= (int) _p[1]->v.i;
  int height= (int) _p[2]->v.i;
  int depth= (int) _p[3]->v.i;
  Uint32 Rmask= (Uint32) _p[4]->v.i;
  Uint32 Gmask= (Uint32) _p[5]->v.i;
  Uint32 Bmask= (Uint32) _p[6]->v.i;
  Uint32 Amask= (Uint32) _p[7]->v.i;

  SDL_Surface* _SDL_CreateRGBSurface = SDL_CreateRGBSurface( flags, width, height, depth, Rmask, Gmask, Bmask, Amask );
  DaoContext_WrapCData( _ctx, (void*) _SDL_CreateRGBSurface, dao_SDL_Surface_Typer );
}
/* SDL_video.h */
static void dao__SDL_CreateRGBSurfaceFrom( DaoContext *_ctx, DValue *_p[], int _n )
{
  void* pixels= (void*) DValue_GetCData( _p[0] );
  int width= (int) _p[1]->v.i;
  int height= (int) _p[2]->v.i;
  int depth= (int) _p[3]->v.i;
  int pitch= (int) _p[4]->v.i;
  Uint32 Rmask= (Uint32) _p[5]->v.i;
  Uint32 Gmask= (Uint32) _p[6]->v.i;
  Uint32 Bmask= (Uint32) _p[7]->v.i;
  Uint32 Amask= (Uint32) _p[8]->v.i;

  SDL_Surface* _SDL_CreateRGBSurfaceFrom = SDL_CreateRGBSurfaceFrom( pixels, width, height, depth, pitch, Rmask, Gmask, Bmask, Amask );
  DaoContext_WrapCData( _ctx, (void*) _SDL_CreateRGBSurfaceFrom, dao_SDL_Surface_Typer );
}
/* SDL_video.h */
static void dao__SDL_FreeSurface( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* surface= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );

  SDL_FreeSurface( surface );
}
/* SDL_video.h */
static void dao__SDL_LockSurface( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* surface= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );

  int _SDL_LockSurface = SDL_LockSurface( surface );
  DaoContext_PutInteger( _ctx, (int) _SDL_LockSurface );
}
/* SDL_video.h */
static void dao__SDL_UnlockSurface( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* surface= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );

  SDL_UnlockSurface( surface );
}
/* SDL_video.h */
static void dao__SDL_LoadBMP_RW( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_RWops* src= (SDL_RWops*) DValue_CastCData( _p[0], dao_SDL_RWops_Typer );
  int freesrc= (int) _p[1]->v.i;

  SDL_Surface* _SDL_LoadBMP_RW = SDL_LoadBMP_RW( src, freesrc );
  DaoContext_WrapCData( _ctx, (void*) _SDL_LoadBMP_RW, dao_SDL_Surface_Typer );
}
/* SDL_video.h */
static void dao__SDL_SaveBMP_RW( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* surface= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );
  SDL_RWops* dst= (SDL_RWops*) DValue_CastCData( _p[1], dao_SDL_RWops_Typer );
  int freedst= (int) _p[2]->v.i;

  int _SDL_SaveBMP_RW = SDL_SaveBMP_RW( surface, dst, freedst );
  DaoContext_PutInteger( _ctx, (int) _SDL_SaveBMP_RW );
}
/* SDL_video.h */
static void dao__SDL_SetColorKey( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* surface= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );
  Uint32 flag= (Uint32) _p[1]->v.i;
  Uint32 key= (Uint32) _p[2]->v.i;

  int _SDL_SetColorKey = SDL_SetColorKey( surface, flag, key );
  DaoContext_PutInteger( _ctx, (int) _SDL_SetColorKey );
}
/* SDL_video.h */
static void dao__SDL_SetAlpha( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* surface= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );
  Uint32 flag= (Uint32) _p[1]->v.i;
  Uint8 alpha= (Uint8) _p[2]->v.i;

  int _SDL_SetAlpha = SDL_SetAlpha( surface, flag, alpha );
  DaoContext_PutInteger( _ctx, (int) _SDL_SetAlpha );
}
/* SDL_video.h */
static void dao__SDL_SetClipRect( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* surface= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );
  SDL_Rect* rect= (SDL_Rect*) DValue_CastCData( _p[1], dao_SDL_Rect_Typer );

  SDL_bool _SDL_SetClipRect = SDL_SetClipRect( surface, rect );
  DaoContext_PutInteger( _ctx, (int) _SDL_SetClipRect );
}
/* SDL_video.h */
static void dao__SDL_GetClipRect( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* surface= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );
  SDL_Rect* rect= (SDL_Rect*) DValue_CastCData( _p[1], dao_SDL_Rect_Typer );

  SDL_GetClipRect( surface, rect );
}
/* SDL_video.h */
static void dao__SDL_ConvertSurface( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* src= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );
  SDL_PixelFormat* fmt= (SDL_PixelFormat*) DValue_CastCData( _p[1], dao_SDL_PixelFormat_Typer );
  Uint32 flags= (Uint32) _p[2]->v.i;

  SDL_Surface* _SDL_ConvertSurface = SDL_ConvertSurface( src, fmt, flags );
  DaoContext_WrapCData( _ctx, (void*) _SDL_ConvertSurface, dao_SDL_Surface_Typer );
}
/* SDL_video.h */
static void dao__SDL_UpperBlit( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* src= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );
  SDL_Rect* srcrect= (SDL_Rect*) DValue_CastCData( _p[1], dao_SDL_Rect_Typer );
  SDL_Surface* dst= (SDL_Surface*) DValue_CastCData( _p[2], dao_SDL_Surface_Typer );
  SDL_Rect* dstrect= (SDL_Rect*) DValue_CastCData( _p[3], dao_SDL_Rect_Typer );

  int _SDL_UpperBlit = SDL_UpperBlit( src, srcrect, dst, dstrect );
  DaoContext_PutInteger( _ctx, (int) _SDL_UpperBlit );
}
/* SDL_video.h */
static void dao__SDL_LowerBlit( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* src= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );
  SDL_Rect* srcrect= (SDL_Rect*) DValue_CastCData( _p[1], dao_SDL_Rect_Typer );
  SDL_Surface* dst= (SDL_Surface*) DValue_CastCData( _p[2], dao_SDL_Surface_Typer );
  SDL_Rect* dstrect= (SDL_Rect*) DValue_CastCData( _p[3], dao_SDL_Rect_Typer );

  int _SDL_LowerBlit = SDL_LowerBlit( src, srcrect, dst, dstrect );
  DaoContext_PutInteger( _ctx, (int) _SDL_LowerBlit );
}
/* SDL_video.h */
static void dao__SDL_FillRect( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* dst= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );
  SDL_Rect* dstrect= (SDL_Rect*) DValue_CastCData( _p[1], dao_SDL_Rect_Typer );
  Uint32 color= (Uint32) _p[2]->v.i;

  int _SDL_FillRect = SDL_FillRect( dst, dstrect, color );
  DaoContext_PutInteger( _ctx, (int) _SDL_FillRect );
}
/* SDL_video.h */
static void dao__SDL_DisplayFormat( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* surface= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );

  SDL_Surface* _SDL_DisplayFormat = SDL_DisplayFormat( surface );
  DaoContext_WrapCData( _ctx, (void*) _SDL_DisplayFormat, dao_SDL_Surface_Typer );
}
/* SDL_video.h */
static void dao__SDL_DisplayFormatAlpha( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* surface= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );

  SDL_Surface* _SDL_DisplayFormatAlpha = SDL_DisplayFormatAlpha( surface );
  DaoContext_WrapCData( _ctx, (void*) _SDL_DisplayFormatAlpha, dao_SDL_Surface_Typer );
}
/* SDL_video.h */
static void dao__SDL_CreateYUVOverlay( DaoContext *_ctx, DValue *_p[], int _n )
{
  int width= (int) _p[0]->v.i;
  int height= (int) _p[1]->v.i;
  Uint32 format= (Uint32) _p[2]->v.i;
  SDL_Surface* display= (SDL_Surface*) DValue_CastCData( _p[3], dao_SDL_Surface_Typer );

  SDL_Overlay* _SDL_CreateYUVOverlay = SDL_CreateYUVOverlay( width, height, format, display );
  DaoContext_WrapCData( _ctx, (void*) _SDL_CreateYUVOverlay, dao_SDL_Overlay_Typer );
}
/* SDL_video.h */
static void dao__SDL_LockYUVOverlay( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Overlay* overlay= (SDL_Overlay*) DValue_CastCData( _p[0], dao_SDL_Overlay_Typer );

  int _SDL_LockYUVOverlay = SDL_LockYUVOverlay( overlay );
  DaoContext_PutInteger( _ctx, (int) _SDL_LockYUVOverlay );
}
/* SDL_video.h */
static void dao__SDL_UnlockYUVOverlay( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Overlay* overlay= (SDL_Overlay*) DValue_CastCData( _p[0], dao_SDL_Overlay_Typer );

  SDL_UnlockYUVOverlay( overlay );
}
/* SDL_video.h */
static void dao__SDL_DisplayYUVOverlay( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Overlay* overlay= (SDL_Overlay*) DValue_CastCData( _p[0], dao_SDL_Overlay_Typer );
  SDL_Rect* dstrect= (SDL_Rect*) DValue_CastCData( _p[1], dao_SDL_Rect_Typer );

  int _SDL_DisplayYUVOverlay = SDL_DisplayYUVOverlay( overlay, dstrect );
  DaoContext_PutInteger( _ctx, (int) _SDL_DisplayYUVOverlay );
}
/* SDL_video.h */
static void dao__SDL_FreeYUVOverlay( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Overlay* overlay= (SDL_Overlay*) DValue_CastCData( _p[0], dao_SDL_Overlay_Typer );

  SDL_FreeYUVOverlay( overlay );
}
/* SDL_video.h */
static void dao__SDL_GL_LoadLibrary( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* path= (char*) DValue_GetMBString( _p[0] );

  int _SDL_GL_LoadLibrary = SDL_GL_LoadLibrary( path );
  DaoContext_PutInteger( _ctx, (int) _SDL_GL_LoadLibrary );
}
/* SDL_video.h */
static void dao__SDL_GL_GetProcAddress( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* proc= (char*) DValue_GetMBString( _p[0] );

  void* _SDL_GL_GetProcAddress = SDL_GL_GetProcAddress( proc );
  DaoContext_PutCPointer( _ctx, (void*) _SDL_GL_GetProcAddress, 0 );
}
/* SDL_video.h */
static void dao__SDL_GL_SetAttribute( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_GLattr attr= (SDL_GLattr) _p[0]->v.i;
  int value= (int) _p[1]->v.i;

  int _SDL_GL_SetAttribute = SDL_GL_SetAttribute( attr, value );
  DaoContext_PutInteger( _ctx, (int) _SDL_GL_SetAttribute );
}
/* SDL_video.h */
static void dao__SDL_GL_GetAttribute( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_GLattr attr= (SDL_GLattr) _p[0]->v.i;
  int value= (int) _p[1]->v.i;

  int _SDL_GL_GetAttribute = SDL_GL_GetAttribute( attr, & value );
  _p[1]->v.i = (int) value;
  DaoContext_PutInteger( _ctx, (int) _SDL_GL_GetAttribute );
}
/* SDL_video.h */
static void dao__SDL_GL_SwapBuffers( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_GL_SwapBuffers(  );
}
/* SDL_video.h */
static void dao__SDL_GL_UpdateRects( DaoContext *_ctx, DValue *_p[], int _n )
{
  int numrects= (int) _p[0]->v.i;
  SDL_Rect* rects= (SDL_Rect*) DValue_CastCData( _p[1], dao_SDL_Rect_Typer );

  SDL_GL_UpdateRects( numrects, rects );
}
/* SDL_video.h */
static void dao__SDL_GL_Lock( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_GL_Lock(  );
}
/* SDL_video.h */
static void dao__SDL_GL_Unlock( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_GL_Unlock(  );
}
/* SDL_video.h */
static void dao__SDL_WM_SetCaption( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* title= (char*) DValue_GetMBString( _p[0] );
  char* icon= (char*) DValue_GetMBString( _p[1] );

  SDL_WM_SetCaption( title, icon );
}
/* SDL_video.h */
static void dao__SDL_WM_GetCaption( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* title_old = (char*)DValue_GetMBString( _p[0] );
  size_t title_len = strlen( title_old );
  char* title = (char*) malloc( title_len + 1 );
  void* title_p = strncpy( title, title_old, title_len );
  char* icon_old = (char*)DValue_GetMBString( _p[1] );
  size_t icon_len = strlen( icon_old );
  char* icon = (char*) malloc( icon_len + 1 );
  void* icon_p = strncpy( icon, icon_old, icon_len );

  SDL_WM_GetCaption( & title, & icon );
  DString_SetMBS( _p[0]->v.s, (char*) title );
  free( title );
  DString_SetMBS( _p[1]->v.s, (char*) icon );
  free( icon );
}
/* SDL_video.h */
static void dao__SDL_WM_SetIcon( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* icon= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );
  Uint8 mask= (Uint8) _p[1]->v.i;

  SDL_WM_SetIcon( icon, & mask );
  _p[1]->v.i = (int) mask;
}
/* SDL_video.h */
static void dao__SDL_WM_IconifyWindow( DaoContext *_ctx, DValue *_p[], int _n )
{

  int _SDL_WM_IconifyWindow = SDL_WM_IconifyWindow(  );
  DaoContext_PutInteger( _ctx, (int) _SDL_WM_IconifyWindow );
}
/* SDL_video.h */
static void dao__SDL_WM_ToggleFullScreen( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* surface= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );

  int _SDL_WM_ToggleFullScreen = SDL_WM_ToggleFullScreen( surface );
  DaoContext_PutInteger( _ctx, (int) _SDL_WM_ToggleFullScreen );
}
/* SDL_video.h */
static void dao__SDL_WM_GrabInput( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_GrabMode mode= (SDL_GrabMode) _p[0]->v.i;

  SDL_GrabMode _SDL_WM_GrabInput = SDL_WM_GrabInput( mode );
  DaoContext_PutInteger( _ctx, (int) _SDL_WM_GrabInput );
}
/* SDL_video.h */
static void dao__SDL_SoftStretch( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Surface* src= (SDL_Surface*) DValue_CastCData( _p[0], dao_SDL_Surface_Typer );
  SDL_Rect* srcrect= (SDL_Rect*) DValue_CastCData( _p[1], dao_SDL_Rect_Typer );
  SDL_Surface* dst= (SDL_Surface*) DValue_CastCData( _p[2], dao_SDL_Surface_Typer );
  SDL_Rect* dstrect= (SDL_Rect*) DValue_CastCData( _p[3], dao_SDL_Rect_Typer );

  int _SDL_SoftStretch = SDL_SoftStretch( src, srcrect, dst, dstrect );
  DaoContext_PutInteger( _ctx, (int) _SDL_SoftStretch );
}
/* SDL_keyboard.h */
static void dao__SDL_EnableUNICODE( DaoContext *_ctx, DValue *_p[], int _n )
{
  int enable= (int) _p[0]->v.i;

  int _SDL_EnableUNICODE = SDL_EnableUNICODE( enable );
  DaoContext_PutInteger( _ctx, (int) _SDL_EnableUNICODE );
}
/* SDL_keyboard.h */
static void dao__SDL_EnableKeyRepeat( DaoContext *_ctx, DValue *_p[], int _n )
{
  int delay= (int) _p[0]->v.i;
  int interval= (int) _p[1]->v.i;

  int _SDL_EnableKeyRepeat = SDL_EnableKeyRepeat( delay, interval );
  DaoContext_PutInteger( _ctx, (int) _SDL_EnableKeyRepeat );
}
/* SDL_keyboard.h */
static void dao__SDL_GetKeyRepeat( DaoContext *_ctx, DValue *_p[], int _n )
{
  int delay= (int) _p[0]->v.i;
  int interval= (int) _p[1]->v.i;

  SDL_GetKeyRepeat( & delay, & interval );
  _p[0]->v.i = (int) delay;
  _p[1]->v.i = (int) interval;
}
/* SDL_keyboard.h */
static void dao__SDL_GetKeyState( DaoContext *_ctx, DValue *_p[], int _n )
{
  int numkeys= (int) _p[0]->v.i;

  Uint8* _SDL_GetKeyState = SDL_GetKeyState( & numkeys );
  _p[0]->v.i = (int) numkeys;
  DaoContext_PutArrayInteger( _ctx, (int*) _SDL_GetKeyState, 0 );
}
/* SDL_keyboard.h */
static void dao__SDL_GetModState( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDLMod _SDL_GetModState = SDL_GetModState(  );
  DaoContext_PutInteger( _ctx, (int) _SDL_GetModState );
}
/* SDL_keyboard.h */
static void dao__SDL_SetModState( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDLMod modstate= (SDLMod) _p[0]->v.i;

  SDL_SetModState( modstate );
}
/* SDL_keyboard.h */
static void dao__SDL_GetKeyName( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDLKey key= (SDLKey) _p[0]->v.i;

  char* _SDL_GetKeyName = SDL_GetKeyName( key );
  DaoContext_PutMBString( _ctx, (char*) _SDL_GetKeyName );
}
/* SDL_mouse.h */
static void dao__SDL_GetMouseState( DaoContext *_ctx, DValue *_p[], int _n )
{
  int x= (int) _p[0]->v.i;
  int y= (int) _p[1]->v.i;

  Uint8 _SDL_GetMouseState = SDL_GetMouseState( & x, & y );
  _p[0]->v.i = (int) x;
  _p[1]->v.i = (int) y;
  DaoContext_PutInteger( _ctx, (int) _SDL_GetMouseState );
}
/* SDL_mouse.h */
static void dao__SDL_GetRelativeMouseState( DaoContext *_ctx, DValue *_p[], int _n )
{
  int x= (int) _p[0]->v.i;
  int y= (int) _p[1]->v.i;

  Uint8 _SDL_GetRelativeMouseState = SDL_GetRelativeMouseState( & x, & y );
  _p[0]->v.i = (int) x;
  _p[1]->v.i = (int) y;
  DaoContext_PutInteger( _ctx, (int) _SDL_GetRelativeMouseState );
}
/* SDL_mouse.h */
static void dao__SDL_WarpMouse( DaoContext *_ctx, DValue *_p[], int _n )
{
  Uint16 x= (Uint16) _p[0]->v.i;
  Uint16 y= (Uint16) _p[1]->v.i;

  SDL_WarpMouse( x, y );
}
/* SDL_mouse.h */
static void dao__SDL_CreateCursor( DaoContext *_ctx, DValue *_p[], int _n )
{
  Uint8 data= (Uint8) _p[0]->v.i;
  Uint8* mask= (Uint8*) DaoArray_ToUInt( _p[1]->v.array );
  int w= (int) _p[2]->v.i;
  int h= (int) _p[3]->v.i;
  int hot_x= (int) _p[4]->v.i;
  int hot_y= (int) _p[5]->v.i;

  SDL_Cursor* _SDL_CreateCursor = SDL_CreateCursor( & data, mask, w, h, hot_x, hot_y );
  _p[0]->v.i = (int) data;
  DaoContext_WrapCData( _ctx, (void*) _SDL_CreateCursor, dao_SDL_Cursor_Typer );
}
/* SDL_mouse.h */
static void dao__SDL_SetCursor( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Cursor* cursor= (SDL_Cursor*) DValue_CastCData( _p[0], dao_SDL_Cursor_Typer );

  SDL_SetCursor( cursor );
}
/* SDL_mouse.h */
static void dao__SDL_GetCursor( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_Cursor* _SDL_GetCursor = SDL_GetCursor(  );
  DaoContext_WrapCData( _ctx, (void*) _SDL_GetCursor, dao_SDL_Cursor_Typer );
}
/* SDL_mouse.h */
static void dao__SDL_FreeCursor( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Cursor* cursor= (SDL_Cursor*) DValue_CastCData( _p[0], dao_SDL_Cursor_Typer );

  SDL_FreeCursor( cursor );
}
/* SDL_mouse.h */
static void dao__SDL_ShowCursor( DaoContext *_ctx, DValue *_p[], int _n )
{
  int toggle= (int) _p[0]->v.i;

  int _SDL_ShowCursor = SDL_ShowCursor( toggle );
  DaoContext_PutInteger( _ctx, (int) _SDL_ShowCursor );
}
/* SDL_events.h */
static void dao__SDL_PumpEvents( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_PumpEvents(  );
}
/* SDL_events.h */
static void dao__SDL_PeepEvents( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Event* events= (SDL_Event*) DValue_CastCData( _p[0], dao_SDL_Event_Typer );
  int numevents= (int) _p[1]->v.i;
  SDL_eventaction action= (SDL_eventaction) _p[2]->v.i;
  Uint32 mask= (Uint32) _p[3]->v.i;

  int _SDL_PeepEvents = SDL_PeepEvents( events, numevents, action, mask );
  DaoContext_PutInteger( _ctx, (int) _SDL_PeepEvents );
}
/* SDL_events.h */
static void dao__SDL_PollEvent( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Event* event= (SDL_Event*) DValue_CastCData( _p[0], dao_SDL_Event_Typer );

  int _SDL_PollEvent = SDL_PollEvent( event );
  DaoContext_PutInteger( _ctx, (int) _SDL_PollEvent );
}
/* SDL_events.h */
static void dao__SDL_WaitEvent( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Event* event= (SDL_Event*) DValue_CastCData( _p[0], dao_SDL_Event_Typer );

  int _SDL_WaitEvent = SDL_WaitEvent( event );
  DaoContext_PutInteger( _ctx, (int) _SDL_WaitEvent );
}
/* SDL_events.h */
static void dao__SDL_PushEvent( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_Event* event= (SDL_Event*) DValue_CastCData( _p[0], dao_SDL_Event_Typer );

  int _SDL_PushEvent = SDL_PushEvent( event );
  DaoContext_PutInteger( _ctx, (int) _SDL_PushEvent );
}
/* SDL_events.h */
static void dao__SDL_EventState( DaoContext *_ctx, DValue *_p[], int _n )
{
  Uint8 type= (Uint8) _p[0]->v.i;
  int state= (int) _p[1]->v.i;

  Uint8 _SDL_EventState = SDL_EventState( type, state );
  DaoContext_PutInteger( _ctx, (int) _SDL_EventState );
}
/* SDL_rwops.h */
static void dao__SDL_RWFromFile( DaoContext *_ctx, DValue *_p[], int _n )
{
  char* file= (char*) DValue_GetMBString( _p[0] );
  char* mode= (char*) DValue_GetMBString( _p[1] );

  SDL_RWops* _SDL_RWFromFile = SDL_RWFromFile( file, mode );
  DaoContext_WrapCData( _ctx, (void*) _SDL_RWFromFile, dao_SDL_RWops_Typer );
}
/* SDL_rwops.h */
static void dao__SDL_RWFromFP( DaoContext *_ctx, DValue *_p[], int _n )
{
  FILE* fp= (FILE*) DaoStream_GetFile( _p[0]->v.stream );
  int autoclose= (int) _p[1]->v.i;

  SDL_RWops* _SDL_RWFromFP = SDL_RWFromFP( fp, autoclose );
  DaoContext_WrapCData( _ctx, (void*) _SDL_RWFromFP, dao_SDL_RWops_Typer );
}
/* SDL_rwops.h */
static void dao__SDL_RWFromMem( DaoContext *_ctx, DValue *_p[], int _n )
{
  void* mem= (void*) DValue_GetCData( _p[0] );
  int size= (int) _p[1]->v.i;

  SDL_RWops* _SDL_RWFromMem = SDL_RWFromMem( mem, size );
  DaoContext_WrapCData( _ctx, (void*) _SDL_RWFromMem, dao_SDL_RWops_Typer );
}
/* SDL_rwops.h */
static void dao__SDL_RWFromConstMem( DaoContext *_ctx, DValue *_p[], int _n )
{
  void* mem= (void*) DValue_GetCData( _p[0] );
  int size= (int) _p[1]->v.i;

  SDL_RWops* _SDL_RWFromConstMem = SDL_RWFromConstMem( mem, size );
  DaoContext_WrapCData( _ctx, (void*) _SDL_RWFromConstMem, dao_SDL_RWops_Typer );
}
/* SDL_rwops.h */
static void dao__SDL_AllocRW( DaoContext *_ctx, DValue *_p[], int _n )
{

  SDL_RWops* _SDL_AllocRW = SDL_AllocRW(  );
  DaoContext_WrapCData( _ctx, (void*) _SDL_AllocRW, dao_SDL_RWops_Typer );
}
/* SDL_rwops.h */
static void dao__SDL_FreeRW( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_RWops* area= (SDL_RWops*) DValue_CastCData( _p[0], dao_SDL_RWops_Typer );

  SDL_FreeRW( area );
}
/* SDL_rwops.h */
static void dao__SDL_ReadLE16( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_RWops* src= (SDL_RWops*) DValue_CastCData( _p[0], dao_SDL_RWops_Typer );

  Uint16 _SDL_ReadLE16 = SDL_ReadLE16( src );
  DaoContext_PutInteger( _ctx, (int) _SDL_ReadLE16 );
}
/* SDL_rwops.h */
static void dao__SDL_ReadBE16( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_RWops* src= (SDL_RWops*) DValue_CastCData( _p[0], dao_SDL_RWops_Typer );

  Uint16 _SDL_ReadBE16 = SDL_ReadBE16( src );
  DaoContext_PutInteger( _ctx, (int) _SDL_ReadBE16 );
}
/* SDL_rwops.h */
static void dao__SDL_ReadLE32( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_RWops* src= (SDL_RWops*) DValue_CastCData( _p[0], dao_SDL_RWops_Typer );

  Uint32 _SDL_ReadLE32 = SDL_ReadLE32( src );
  DaoContext_PutInteger( _ctx, (int) _SDL_ReadLE32 );
}
/* SDL_rwops.h */
static void dao__SDL_ReadBE32( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_RWops* src= (SDL_RWops*) DValue_CastCData( _p[0], dao_SDL_RWops_Typer );

  Uint32 _SDL_ReadBE32 = SDL_ReadBE32( src );
  DaoContext_PutInteger( _ctx, (int) _SDL_ReadBE32 );
}
/* SDL_rwops.h */
static void dao__SDL_ReadLE64( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_RWops* src= (SDL_RWops*) DValue_CastCData( _p[0], dao_SDL_RWops_Typer );

  Uint64 _SDL_ReadLE64 = SDL_ReadLE64( src );
  DaoContext_PutInteger( _ctx, (int) _SDL_ReadLE64 );
}
/* SDL_rwops.h */
static void dao__SDL_ReadBE64( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_RWops* src= (SDL_RWops*) DValue_CastCData( _p[0], dao_SDL_RWops_Typer );

  Uint64 _SDL_ReadBE64 = SDL_ReadBE64( src );
  DaoContext_PutInteger( _ctx, (int) _SDL_ReadBE64 );
}
/* SDL_rwops.h */
static void dao__SDL_WriteLE16( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_RWops* dst= (SDL_RWops*) DValue_CastCData( _p[0], dao_SDL_RWops_Typer );
  Uint16 value= (Uint16) _p[1]->v.i;

  int _SDL_WriteLE16 = SDL_WriteLE16( dst, value );
  DaoContext_PutInteger( _ctx, (int) _SDL_WriteLE16 );
}
/* SDL_rwops.h */
static void dao__SDL_WriteBE16( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_RWops* dst= (SDL_RWops*) DValue_CastCData( _p[0], dao_SDL_RWops_Typer );
  Uint16 value= (Uint16) _p[1]->v.i;

  int _SDL_WriteBE16 = SDL_WriteBE16( dst, value );
  DaoContext_PutInteger( _ctx, (int) _SDL_WriteBE16 );
}
/* SDL_rwops.h */
static void dao__SDL_WriteLE32( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_RWops* dst= (SDL_RWops*) DValue_CastCData( _p[0], dao_SDL_RWops_Typer );
  Uint32 value= (Uint32) _p[1]->v.i;

  int _SDL_WriteLE32 = SDL_WriteLE32( dst, value );
  DaoContext_PutInteger( _ctx, (int) _SDL_WriteLE32 );
}
/* SDL_rwops.h */
static void dao__SDL_WriteBE32( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_RWops* dst= (SDL_RWops*) DValue_CastCData( _p[0], dao_SDL_RWops_Typer );
  Uint32 value= (Uint32) _p[1]->v.i;

  int _SDL_WriteBE32 = SDL_WriteBE32( dst, value );
  DaoContext_PutInteger( _ctx, (int) _SDL_WriteBE32 );
}
/* SDL_rwops.h */
static void dao__SDL_WriteLE64( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_RWops* dst= (SDL_RWops*) DValue_CastCData( _p[0], dao_SDL_RWops_Typer );
  Uint64 value= (Uint64) _p[1]->v.i;

  int _SDL_WriteLE64 = SDL_WriteLE64( dst, value );
  DaoContext_PutInteger( _ctx, (int) _SDL_WriteLE64 );
}
/* SDL_rwops.h */
static void dao__SDL_WriteBE64( DaoContext *_ctx, DValue *_p[], int _n )
{
  SDL_RWops* dst= (SDL_RWops*) DValue_CastCData( _p[0], dao_SDL_RWops_Typer );
  Uint64 value= (Uint64) _p[1]->v.i;

  int _SDL_WriteBE64 = SDL_WriteBE64( dst, value );
  DaoContext_PutInteger( _ctx, (int) _SDL_WriteBE64 );
}

int DaoOnLoad2( DaoVmSpace *vms, DaoNameSpace *ns )
{
  DaoTypeBase *typers[43];
  const char *aliases[5];
  __daoVmSpace = vms;
  typers[0] = dao_SDL_ActiveEvent_Typer;
  typers[1] = dao_SDL_AudioCVT_Typer;
  typers[2] = dao_SDL_AudioSpec_Typer;
  typers[3] = dao_SDL_BlitMap_Typer;
  typers[4] = dao_SDL_CD_Typer;
  typers[5] = dao_SDL_CDtrack_Typer;
  typers[6] = dao_SDL_Color_Typer;
  typers[7] = dao_SDL_Cursor_Typer;
  typers[8] = dao_SDL_Event_Typer;
  typers[9] = dao_SDL_ExposeEvent_Typer;
  typers[10] = dao_SDL_JoyAxisEvent_Typer;
  typers[11] = dao_SDL_JoyBallEvent_Typer;
  typers[12] = dao_SDL_JoyButtonEvent_Typer;
  typers[13] = dao_SDL_JoyHatEvent_Typer;
  typers[14] = dao_SDL_Joystick_Typer;
  typers[15] = dao_SDL_KeyboardEvent_Typer;
  typers[16] = dao_SDL_MouseButtonEvent_Typer;
  typers[17] = dao_SDL_MouseMotionEvent_Typer;
  typers[18] = dao_SDL_Overlay_Typer;
  typers[19] = dao_SDL_Palette_Typer;
  typers[20] = dao_SDL_PixelFormat_Typer;
  typers[21] = dao_SDL_QuitEvent_Typer;
  typers[22] = dao_SDL_RWops_Typer;
  typers[23] = dao_SDL_Rect_Typer;
  typers[24] = dao_SDL_ResizeEvent_Typer;
  typers[25] = dao_SDL_Surface_Typer;
  typers[26] = dao_SDL_SysWMEvent_Typer;
  typers[27] = dao_SDL_SysWMmsg_Typer;
  typers[28] = dao_SDL_Thread_Typer;
  typers[29] = dao_SDL_TimerID_Typer;
  typers[30] = dao_SDL_UserEvent_Typer;
  typers[31] = dao_SDL_VideoInfo_Typer;
  typers[32] = dao_SDL_cond_Typer;
  typers[33] = dao_SDL_iconv_t_Typer;
  typers[34] = dao_SDL_keysym_Typer;
  typers[35] = dao_SDL_mutex_Typer;
  typers[36] = dao_SDL_sem_Typer;
  typers[37] = dao_WMcursor_Typer;
  typers[38] = dao_private_hwdata_Typer;
  typers[39] = dao_private_yuvhwdata_Typer;
  typers[40] = dao_private_yuvhwfuncs_Typer;
  typers[41] = dao_va_list_Typer;
  typers[42] = NULL;
  aliases[0] = "SDL_sem";
  aliases[1] = "SDL_semaphore";
  aliases[2] = "SDL_Joystick";
  aliases[3] = "_SDL_Joystick";
  aliases[4] = NULL;
  DaoNameSpace_TypeDefine( ns, "int", "CDstatus" );
  DaoNameSpace_TypeDefine( ns, "int", "SDLKey" );
  DaoNameSpace_TypeDefine( ns, "int", "SDLMod" );
  DaoNameSpace_TypeDefine( ns, "int", "SDL_DUMMY_ENUM" );
  DaoNameSpace_TypeDefine( ns, "int", "SDL_EventMask" );
  DaoNameSpace_TypeDefine( ns, "int", "SDL_EventType" );
  DaoNameSpace_TypeDefine( ns, "int", "SDL_GLattr" );
  DaoNameSpace_TypeDefine( ns, "int", "SDL_GrabMode" );
  DaoNameSpace_TypeDefine( ns, "int", "SDL_audiostatus" );
  DaoNameSpace_TypeDefine( ns, "int", "SDL_bool" );
  DaoNameSpace_TypeDefine( ns, "int", "SDL_errorcode" );
  DaoNameSpace_TypeDefine( ns, "int", "SDL_eventaction" );
  DaoNameSpace_TypeDefine( ns, "int", "Sint16" );
  DaoNameSpace_TypeDefine( ns, "int", "Sint32" );
  DaoNameSpace_TypeDefine( ns, "int", "Sint64" );
  DaoNameSpace_TypeDefine( ns, "int", "Sint8" );
  DaoNameSpace_TypeDefine( ns, "int", "Uint16" );
  DaoNameSpace_TypeDefine( ns, "int", "Uint32" );
  DaoNameSpace_TypeDefine( ns, "int", "Uint64" );
  DaoNameSpace_TypeDefine( ns, "int", "Uint8" );
  DaoNameSpace_AddConstNumbers( ns, constNumbers );
  DaoNameSpace_WrapTypes( ns, typers );
  DaoNameSpace_TypeDefines( ns, aliases );
  DaoNameSpace_WrapFunctions( ns, dao_Funcs );
  return 0;
}
#ifdef __cplusplus
}
#endif

